Title: [182798] trunk/Source/WebKit2
Revision
182798
Author
cdu...@apple.com
Date
2015-04-14 10:07:11 -0700 (Tue, 14 Apr 2015)

Log Message

REGRESSION(r182603): [GTK] More than 500 crashes on the layout tests with the debug build.
https://bugs.webkit.org/show_bug.cgi?id=143715

Reviewed by Darin Adler.

Enable assertions checking that calling editorState() does not cause a
synchronous layout only on Mac and iOS. This assertion does not
necessarily hold true on other ports as each one as its own
platformEditorState() implementation. In particular, this assertion
was being hit on GTK.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didChangeSelection):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (182797 => 182798)


--- trunk/Source/WebKit2/ChangeLog	2015-04-14 16:13:32 UTC (rev 182797)
+++ trunk/Source/WebKit2/ChangeLog	2015-04-14 17:07:11 UTC (rev 182798)
@@ -1,3 +1,19 @@
+2015-04-14  Chris Dumez  <cdu...@apple.com>
+
+        REGRESSION(r182603): [GTK] More than 500 crashes on the layout tests with the debug build.
+        https://bugs.webkit.org/show_bug.cgi?id=143715
+
+        Reviewed by Darin Adler.
+
+        Enable assertions checking that calling editorState() does not cause a
+        synchronous layout only on Mac and iOS. This assertion does not
+        necessarily hold true on other ports as each one as its own
+        platformEditorState() implementation. In particular, this assertion
+        was being hit on GTK.
+
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::didChangeSelection):
+
 2015-04-13  Alexey Proskuryakov  <a...@apple.com>
 
         Build fixes after r182772.

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (182797 => 182798)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2015-04-14 16:13:32 UTC (rev 182797)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2015-04-14 17:07:11 UTC (rev 182798)
@@ -4400,7 +4400,9 @@
     // trigger a synchronous layout every time the selection changes. sendPostLayoutEditorStateIfNeeded() will be called
     // to send the full editor state after layout is done if we send a partial editor state here.
     auto editorState = this->editorState(needsLayout ? IncludePostLayoutDataHint::No : IncludePostLayoutDataHint::Yes);
+#if PLATFORM(COCOA)
     ASSERT_WITH_MESSAGE(needsLayout == (view && view->needsLayout()), "Calling editorState() should not cause a synchronous layout.");
+#endif
     m_isEditorStateMissingPostLayoutData = editorState.isMissingPostLayoutData;
 
 #if PLATFORM(MAC) && USE(ASYNC_NSTEXTINPUTCLIENT)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to