Title: [236529] trunk/Source/WebKit
- Revision
- 236529
- Author
- cdu...@apple.com
- Date
- 2018-09-26 15:18:25 -0700 (Wed, 26 Sep 2018)
Log Message
Regression(r236512): WKWebViewCandidateTests.SoftSpaceReplacementAfterCandidateInsertionWithoutReplacement API test is failing
https://bugs.webkit.org/show_bug.cgi?id=190007
Reviewed by Alex Christensen.
Drop DispatchMessageEvenWhenWaitingForSyncReply SendOption from EditorStateChanged IPC calls to restore
pre-r236512 behavior. Before r236512, this option had no effect on IPC from the WebContent to the UIProcess
because the m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage flag was set
on that IPC::Connection. However, after r236512, m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage
is no longer set on the connection, and the DispatchMessageEvenWhenWaitingForSyncReply SendOption was
causing this message to get processed out of order with regards to other async IPC, thus causing the
API test failure.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::sendEditorStateUpdate):
(WebKit::WebPage::sendPartialEditorStateAndSchedulePostLayoutUpdate):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (236528 => 236529)
--- trunk/Source/WebKit/ChangeLog 2018-09-26 21:58:29 UTC (rev 236528)
+++ trunk/Source/WebKit/ChangeLog 2018-09-26 22:18:25 UTC (rev 236529)
@@ -1,3 +1,22 @@
+2018-09-26 Chris Dumez <cdu...@apple.com>
+
+ Regression(r236512): WKWebViewCandidateTests.SoftSpaceReplacementAfterCandidateInsertionWithoutReplacement API test is failing
+ https://bugs.webkit.org/show_bug.cgi?id=190007
+
+ Reviewed by Alex Christensen.
+
+ Drop DispatchMessageEvenWhenWaitingForSyncReply SendOption from EditorStateChanged IPC calls to restore
+ pre-r236512 behavior. Before r236512, this option had no effect on IPC from the WebContent to the UIProcess
+ because the m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage flag was set
+ on that IPC::Connection. However, after r236512, m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage
+ is no longer set on the connection, and the DispatchMessageEvenWhenWaitingForSyncReply SendOption was
+ causing this message to get processed out of order with regards to other async IPC, thus causing the
+ API test failure.
+
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::sendEditorStateUpdate):
+ (WebKit::WebPage::sendPartialEditorStateAndSchedulePostLayoutUpdate):
+
2018-09-26 Alex Christensen <achristen...@webkit.org>
Fix UAF after r236463
Modified: trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp (236528 => 236529)
--- trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2018-09-26 21:58:29 UTC (rev 236528)
+++ trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2018-09-26 22:18:25 UTC (rev 236529)
@@ -5608,7 +5608,7 @@
// If that is the case, just send what we have (i.e. don't include post-layout data) and wait until the
// next layer tree commit to compute and send the complete EditorState over.
auto state = editorState();
- send(Messages::WebPageProxy::EditorStateChanged(state), pageID(), IPC::SendOption::DispatchMessageEvenWhenWaitingForSyncReply);
+ send(Messages::WebPageProxy::EditorStateChanged(state), pageID());
if (state.isMissingPostLayoutData) {
m_hasPendingEditorStateUpdate = true;
@@ -5644,7 +5644,7 @@
if (frame.editor().ignoreSelectionChanges())
return;
- send(Messages::WebPageProxy::EditorStateChanged(editorState(IncludePostLayoutDataHint::No)), pageID(), IPC::SendOption::DispatchMessageEvenWhenWaitingForSyncReply);
+ send(Messages::WebPageProxy::EditorStateChanged(editorState(IncludePostLayoutDataHint::No)), pageID());
if (m_hasPendingEditorStateUpdate)
return;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes