Have DOMWindowProperty get is frame from its associated DOMWindow, instead of having its own m_frame that can potentially get out-of-sync.
Created attachment 351745 [details] Patch
Created attachment 351747 [details] Patch
Comment on attachment 351747 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=351747&action=review > Source/WebCore/page/DOMWindow.cpp:686 > -Screen* DOMWindow::screen() const > +Screen* DOMWindow::screen() Does this change really introduce mutating the DOMWindow when we access its screen? Same for other const removals. I see no good reason for them.
(In reply to Alex Christensen from comment #3) > Comment on attachment 351747 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=351747&action=review > > > Source/WebCore/page/DOMWindow.cpp:686 > > -Screen* DOMWindow::screen() const > > +Screen* DOMWindow::screen() > > Does this change really introduce mutating the DOMWindow when we access its > screen? Same for other const removals. I see no good reason for them. I needed to drop the const for correctness because the DOMWindow passes itself to the DOMWindowProperties when constructing them as a DOMWindow&.
(In reply to Chris Dumez from comment #4) > (In reply to Alex Christensen from comment #3) > > Comment on attachment 351747 [details] > > Patch > > > > View in context: > > https://bugs.webkit.org/attachment.cgi?id=351747&action=review > > > > > Source/WebCore/page/DOMWindow.cpp:686 > > > -Screen* DOMWindow::screen() const > > > +Screen* DOMWindow::screen() > > > > Does this change really introduce mutating the DOMWindow when we access its > > screen? Same for other const removals. I see no good reason for them. > > I needed to drop the const for correctness because the DOMWindow passes > itself to the DOMWindowProperties when constructing them as a DOMWindow&. The only reason they were const before is because the DOMWindow was passing its frame to the DOMWindowProperties when constructing them and the frame() getter is marked const.
Comment on attachment 351747 [details] Patch Clearing flags on attachment: 351747 Committed r236917: <https://trac.webkit.org/changeset/236917>
All reviewed patches have been landed. Closing bug.
<rdar://problem/45091778>