Title: [218567] releases/WebKitGTK/webkit-2.16
- Revision
- 218567
- Author
- carlo...@webkit.org
- Date
- 2017-06-20 01:28:17 -0700 (Tue, 20 Jun 2017)
Log Message
Merge r217810 - ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128
https://bugs.webkit.org/show_bug.cgi?id=172943
<rdar://problem/31288058>
Reviewed by Alexey Proskuryakov.
Source/WebKit2:
In Connection::sendMessage(), make sure we only ever transform asynchronous messages into synchronous
ones if sendMessage() is called on the main thread. This is necessary because we no longer support
sending synchronous messages from a background thread since r205125.
* Platform/IPC/Connection.cpp:
(IPC::Connection::sendMessage):
(IPC::Connection::sendSyncMessage):
LayoutTests:
Add better test coverage.
* storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt: Added.
* storage/domstorage/sessionstorage/set-item-synchronous-keydown.html: Added.
Modified Paths
Added Paths
Diff
Modified: releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog (218566 => 218567)
--- releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog 2017-06-20 08:25:41 UTC (rev 218566)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/ChangeLog 2017-06-20 08:28:17 UTC (rev 218567)
@@ -1,3 +1,16 @@
+2017-06-05 Chris Dumez <cdu...@apple.com>
+
+ ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128
+ https://bugs.webkit.org/show_bug.cgi?id=172943
+ <rdar://problem/31288058>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Add better test coverage.
+
+ * storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt: Added.
+ * storage/domstorage/sessionstorage/set-item-synchronous-keydown.html: Added.
+
2017-06-12 Carlos Garcia Campos <cgar...@igalia.com>
[GTK] Stop dismissing menus attached to the web view for every injected event
Added: releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt (0 => 218567)
--- releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt (rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown-expected.txt 2017-06-20 08:28:17 UTC (rev 218567)
@@ -0,0 +1,12 @@
+Tests updating sessionStorage in the keydown handler and makes sure the value is updated synchronously.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS sessionStorage.setItemSynchronousKeydownTestValue is "0"
+Setting setItemSynchronousKeydownTestValue to 1 in keydown handler.
+PASS sessionStorage.setItemSynchronousKeydownTestValue is "1"
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html (0 => 218567)
--- releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html (rev 0)
+++ releases/WebKitGTK/webkit-2.16/LayoutTests/storage/domstorage/sessionstorage/set-item-synchronous-keydown.html 2017-06-20 08:28:17 UTC (rev 218567)
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<html>
+<body>
+<script src=""
+<script src=""
+<input id="testInput" type="text"></input>
+<script>
+description("Tests updating sessionStorage in the keydown handler and makes sure the value is updated synchronously.");
+
+function keydownHandler()
+{
+ debug("Setting setItemSynchronousKeydownTestValue to 1 in keydown handler.");
+ sessionStorage.setItemSynchronousKeydownTestValue = 1;
+}
+
+testInput.focus();
+testInput._onkeydown_ = keydownHandler;
+sessionStorage.setItemSynchronousKeydownTestValue = 0;
+shouldBeEqualToString("sessionStorage.setItemSynchronousKeydownTestValue", "0");
+
+// keydownHandler() should be called synchronously.
+if (window.eventSender)
+ eventSender.keyDown('a');
+
+shouldBeEqualToString("sessionStorage.setItemSynchronousKeydownTestValue", "1");
+
+sessionStorage.removeItem("setItemSynchronousKeydownTestValue");
+</script>
+</body>
+</html>
Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog (218566 => 218567)
--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog 2017-06-20 08:25:41 UTC (rev 218566)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/ChangeLog 2017-06-20 08:28:17 UTC (rev 218567)
@@ -1,3 +1,19 @@
+2017-06-05 Chris Dumez <cdu...@apple.com>
+
+ ASSERTION FAILED: RunLoop::isMain() in com.apple.WebKit: IPC::Connection::sendSyncMessage + 128
+ https://bugs.webkit.org/show_bug.cgi?id=172943
+ <rdar://problem/31288058>
+
+ Reviewed by Alexey Proskuryakov.
+
+ In Connection::sendMessage(), make sure we only ever transform asynchronous messages into synchronous
+ ones if sendMessage() is called on the main thread. This is necessary because we no longer support
+ sending synchronous messages from a background thread since r205125.
+
+ * Platform/IPC/Connection.cpp:
+ (IPC::Connection::sendMessage):
+ (IPC::Connection::sendSyncMessage):
+
2017-06-02 Chris Dumez <cdu...@apple.com>
REGRESSION (r206386): Xactimate Website Crashes @ com.apple.WebKit: WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant + 255
Modified: releases/WebKitGTK/webkit-2.16/Source/WebKit2/Platform/IPC/Connection.cpp (218566 => 218567)
--- releases/WebKitGTK/webkit-2.16/Source/WebKit2/Platform/IPC/Connection.cpp 2017-06-20 08:25:41 UTC (rev 218566)
+++ releases/WebKitGTK/webkit-2.16/Source/WebKit2/Platform/IPC/Connection.cpp 2017-06-20 08:28:17 UTC (rev 218567)
@@ -379,7 +379,7 @@
if (!isValid())
return false;
- if (m_inDispatchMessageMarkedToUseFullySynchronousModeForTesting && !encoder->isSyncMessage() && !(encoder->messageReceiverName() == "IPC")) {
+ if (RunLoop::isMain() && m_inDispatchMessageMarkedToUseFullySynchronousModeForTesting && !encoder->isSyncMessage() && !(encoder->messageReceiverName() == "IPC")) {
uint64_t syncRequestID;
auto wrappedMessage = createSyncMessageEncoder("IPC", "WrappedAsyncMessageForTesting", encoder->destinationID(), syncRequestID);
wrappedMessage->setFullySynchronousModeForTesting();
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes