diff --git a/webkit-gtk/distinfo b/webkit-gtk/distinfo index 14d2fdd39f..81cf356c20 100644 --- a/webkit-gtk/distinfo +++ b/webkit-gtk/distinfo @@ -21,7 +21,7 @@ SHA1 (patch-Source_WebCore_rendering_shapes_RasterShape.cpp) = 551e47698dee50d09 SHA1 (patch-Source_WebKit_CMakeLists.txt) = 228cc4734de3b08a3877ac839b1ffa2fbf2d3aa8 SHA1 (patch-Source_WebKit_NetworkProcess_cache_NetworkCacheFileSystem.cpp) = 3051360e2770360781027f6f0153e0ea6f304073 SHA1 (patch-Source_WebKit_PlatformGTK.cmake) = 91a7e63ebeac06cca21547aa7025a55a4d174b6d -SHA1 (patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp) = 9c58253868e06b3dd3cac936651ba7e6a1437fc6 +SHA1 (patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp) = cde759fbddcd242fa12183c20c768d5adadd520b SHA1 (patch-Source_WebKit_Platform_classifier_ResourceLoadStatisticsClassifier.cpp) = 920376ec8697780637f376b2fff312b7e214a7f6 SHA1 (patch-Source_bmalloc_bmalloc_VMAllocate.h) = f5235df843849f8e1dd8fceaa015bc91785d8b3b SHA1 (patch-Source_cmake_OptionsCommon.cmake) = 03b72552414e7114bfa7ddc2d68fd97009a5ff7d diff --git a/webkit-gtk/patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp b/webkit-gtk/patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp index 39875f3b0b..0196167b73 100644 --- a/webkit-gtk/patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp +++ b/webkit-gtk/patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp @@ -7,18 +7,14 @@ WebKit already uses shared memory to communicate the message body when the message is too large, so force it to always use this method to avoid encountering EMSGSIZE. ---- Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp.orig 2017-08-09 09:13:52.000000000 +0000 +--- Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp.orig 2018-09-06 11:51:34.000000000 +0000 +++ Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp -@@ -380,8 +380,12 @@ bool Connection::sendOutgoingMessage(std - return false; - } +@@ -481,6 +481,8 @@ bool Connection::sendOutputMessage(UnixM + message.msg_iovlen = iovLength; -+#if 0 - size_t messageSizeWithBodyInline = sizeof(MessageInfo) + (outputMessage.attachments().size() * sizeof(AttachmentInfo)) + outputMessage.bodySize(); - if (messageSizeWithBodyInline > messageMaxSize && outputMessage.bodySize()) { -+#else -+ { -+#endif - RefPtr oolMessageBody = WebKit::SharedMemory::allocate(encoder->bufferSize()); - if (!oolMessageBody) - return false; + while (sendmsg(m_socketDescriptor, &message, 0) == -1) { ++ if (errno == EMSGSIZE) ++ WTFLogAlways("XXX EMSGSIZE: message.msg_iovlen: %d", message.msg_iovlen); + if (errno == EINTR) + continue; + if (errno == EAGAIN || errno == EWOULDBLOCK) {