diff --git a/.gitignore b/.gitignore index e2096ca..4538a1c 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ /webkitgtk-2.39.90.tar.xz.asc /webkitgtk-2.39.91.tar.xz.asc /webkitgtk-2.40.0.tar.xz.asc +/webkitgtk-2.41.1.tar.xz.asc diff --git a/build.patch b/build.patch new file mode 100644 index 0000000..4ecf666 --- /dev/null +++ b/build.patch @@ -0,0 +1,149 @@ +From fd977228c791d5cf767a1e5b4ed3596add8ed6d5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C5=BDan=20Dober=C5=A1ek?= +Date: Thu, 30 Mar 2023 10:36:24 -0700 +Subject: [PATCH] Build fix around std::variant in SourceBrush for + Clang/libstdc++ https://bugs.webkit.org/show_bug.cgi?id=254742 + +Unreviewed, build fix for the SourceBrush::Brush std::variant construction when +using Clang with libstdc++. + +Things get mixed up when using Ref for constructing the variant, with +the compiler using it as initialization for the LogicalGradient type, the other +possible type in the variant, which ends up in a compile-time error. + +This can be avoided by using the in-place tag when constructing the variant in +the SourceBrush::setPattern() method, specifying which variant-alternative type +should be used. + +Similar fix for the same reasons is also needed in the decoding part of the +ArgumentCoder> specialization, this being problematic due to the +SourceBrush::Brush decoding produced for the generated serializers purpose. +There the variant is constructed with the in-place tag that's based on the index +value of the alternative. + +* Source/WebCore/platform/graphics/SourceBrush.cpp: +(WebCore::SourceBrush::setPattern): +* Source/WebCore/platform/graphics/SourceBrush.h: +* Source/WebKit/Platform/IPC/ArgumentCoders.h: + +Canonical link: https://commits.webkit.org/262339@main +--- + Source/WebCore/platform/graphics/SourceBrush.cpp | 2 +- + Source/WebCore/platform/graphics/SourceBrush.h | 3 ++- + Source/WebKit/Platform/IPC/ArgumentCoders.h | 2 +- + 3 files changed, 4 insertions(+), 3 deletions(-) + +diff --git a/Source/WebCore/platform/graphics/SourceBrush.cpp b/Source/WebCore/platform/graphics/SourceBrush.cpp +index f42e0d42f534..44135b7706ad 100644 +--- a/Source/WebCore/platform/graphics/SourceBrush.cpp ++++ b/Source/WebCore/platform/graphics/SourceBrush.cpp +@@ -91,7 +91,7 @@ void SourceBrush::setGradient(Ref&& gradient, const AffineTransform& s + + void SourceBrush::setPattern(Ref&& pattern) + { +- m_brush = { WTFMove(pattern) }; ++ m_brush = { Brush::Variant { std::in_place_type>, WTFMove(pattern) } }; + } + + WTF::TextStream& operator<<(TextStream& ts, const SourceBrush& brush) +diff --git a/Source/WebCore/platform/graphics/SourceBrush.h b/Source/WebCore/platform/graphics/SourceBrush.h +index 176b9fc85c18..cd97b82c7444 100644 +--- a/Source/WebCore/platform/graphics/SourceBrush.h ++++ b/Source/WebCore/platform/graphics/SourceBrush.h +@@ -42,7 +42,8 @@ class SourceBrush { + template static std::optional decode(Decoder&); + }; + +- std::variant> brush; ++ using Variant = std::variant>; ++ Variant brush; + }; + + SourceBrush() = default; +diff --git a/Source/WebKit/Platform/IPC/ArgumentCoders.h b/Source/WebKit/Platform/IPC/ArgumentCoders.h +index ae37b2145fc2..2d93984e3f36 100644 +--- a/Source/WebKit/Platform/IPC/ArgumentCoders.h ++++ b/Source/WebKit/Platform/IPC/ArgumentCoders.h +@@ -743,7 +743,7 @@ template struct ArgumentCoder> { + auto optional = decoder.template decode>>(); + if (!optional) + return std::nullopt; +- return std::make_optional>(WTFMove(*optional)); ++ return std::make_optional>(std::in_place_index, WTFMove(*optional)); + } + return decode(decoder, std::make_index_sequence { }, i); + } else + +From 93920b55f52ff8b883296f4845269e2ed746acb3 Mon Sep 17 00:00:00 2001 +From: Michael Catanzaro +Date: Fri, 31 Mar 2023 12:24:09 -0700 +Subject: [PATCH] Fix build of SourceBrush.cpp + https://bugs.webkit.org/show_bug.cgi?id=254821 + +Unreviewed build fix. + +* Source/WebCore/platform/graphics/SourceBrush.cpp: +(WebCore::SourceBrush::setGradient): +(WebCore::SourceBrush::setPattern): + +Canonical link: https://commits.webkit.org/262434@main +--- + Source/WebCore/platform/graphics/SourceBrush.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Source/WebCore/platform/graphics/SourceBrush.cpp b/Source/WebCore/platform/graphics/SourceBrush.cpp +index 44135b7706ad..5377831d7902 100644 +--- a/Source/WebCore/platform/graphics/SourceBrush.cpp ++++ b/Source/WebCore/platform/graphics/SourceBrush.cpp +@@ -86,12 +86,12 @@ Pattern* SourceBrush::pattern() const + + void SourceBrush::setGradient(Ref&& gradient, const AffineTransform& spaceTransform) + { +- m_brush = { Brush::LogicalGradient { { WTFMove(gradient) }, spaceTransform } }; ++ m_brush = Brush { Brush::LogicalGradient { { WTFMove(gradient) }, spaceTransform } }; + } + + void SourceBrush::setPattern(Ref&& pattern) + { +- m_brush = { Brush::Variant { std::in_place_type>, WTFMove(pattern) } }; ++ m_brush = Brush { Brush::Variant { std::in_place_type>, WTFMove(pattern) } }; + } + + WTF::TextStream& operator<<(TextStream& ts, const SourceBrush& brush) + +From 2fd83187cbe7cf7f57f4d6834f6060b00703683b Mon Sep 17 00:00:00 2001 +From: Michael Catanzaro +Date: Fri, 31 Mar 2023 13:23:45 -0500 +Subject: [PATCH] [GTK] AcceleratedSurfaceDMABuf.cpp does not build on i368 + https://bugs.webkit.org/show_bug.cgi?id=254828 + +Reviewed by NOBODY (OOPS!). + +* Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp: +(WebKit::AcceleratedSurfaceDMABuf::clientResize): +--- + .../WebPage/gtk/AcceleratedSurfaceDMABuf.cpp | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp b/Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp +index 2aa33586b317..34cca9f11d62 100644 +--- a/Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp ++++ b/Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp +@@ -130,12 +130,12 @@ void AcceleratedSurfaceDMABuf::clientResize(const WebCore::IntSize& size) + } + UnixFileDescriptor backFD(gbm_bo_get_fd(backObject), UnixFileDescriptor::Adopt); + Vector attributes = { +- EGL_WIDTH, gbm_bo_get_width(backObject), +- EGL_HEIGHT, gbm_bo_get_height(backObject), +- EGL_LINUX_DRM_FOURCC_EXT, gbm_bo_get_format(backObject), ++ EGL_WIDTH, static_cast(gbm_bo_get_width(backObject)), ++ EGL_HEIGHT, static_cast(gbm_bo_get_height(backObject)), ++ EGL_LINUX_DRM_FOURCC_EXT, static_cast(gbm_bo_get_format(backObject)), + EGL_DMA_BUF_PLANE0_FD_EXT, backFD.value(), +- EGL_DMA_BUF_PLANE0_OFFSET_EXT, gbm_bo_get_offset(backObject, 0), +- EGL_DMA_BUF_PLANE0_PITCH_EXT, gbm_bo_get_stride(backObject), ++ EGL_DMA_BUF_PLANE0_OFFSET_EXT, static_cast(gbm_bo_get_offset(backObject, 0)), ++ EGL_DMA_BUF_PLANE0_PITCH_EXT, static_cast(gbm_bo_get_stride(backObject)), + EGL_NONE + }; + m_backImage = display.createEGLImage(EGL_NO_CONTEXT, EGL_LINUX_DMA_BUF_EXT, nullptr, attributes); diff --git a/crashy-jit.patch b/crashy-jit.patch new file mode 100644 index 0000000..b8257d5 --- /dev/null +++ b/crashy-jit.patch @@ -0,0 +1,155 @@ +From 63f0b2d0c54093bfea054cc6b302e578260d0fcc Mon Sep 17 00:00:00 2001 +From: Yusuke Suzuki +Date: Thu, 30 Mar 2023 19:47:10 -0700 +Subject: [PATCH] [JSC] Reduce # of parameters of function#bind operations + https://bugs.webkit.org/show_bug.cgi?id=254752 rdar://problem/107427493 + +Reviewed by Ross Kirsling. + +Let's reconstruct boundArgsLength via passed args to reduce # of parameters of operations, +to mitigate issues on x64 Windows (Windows x64 does not have appropriate implementation for more parameters). + +* Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp: +(JSC::DFG::ByteCodeParser::handleIntrinsicCall): +* Source/JavaScriptCore/dfg/DFGOperations.cpp: +(JSC::DFG::JSC_DEFINE_JIT_OPERATION): +* Source/JavaScriptCore/dfg/DFGOperations.h: +* Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp: +(JSC::DFG::SpeculativeJIT::compileFunctionBind): +(JSC::DFG::SpeculativeJIT::compileNewBoundFunction): +* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::compileNewBoundFunction): +(JSC::FTL::DFG::LowerDFGToB3::compileFunctionBind): + +Canonical link: https://commits.webkit.org/262385@main +--- + Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp | 2 +- + Source/JavaScriptCore/dfg/DFGOperations.cpp | 13 +++++++++++-- + Source/JavaScriptCore/dfg/DFGOperations.h | 4 ++-- + Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp | 6 ++---- + Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp | 5 ++--- + 5 files changed, 18 insertions(+), 12 deletions(-) + +diff --git a/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp b/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp +index fc1cd9e88efc..ae1265bb4bc8 100644 +--- a/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp ++++ b/Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp +@@ -3886,7 +3886,7 @@ auto ByteCodeParser::handleIntrinsicCall(Node* callee, Operand result, CallVaria + for (; index < argumentCountIncludingThis; ++index) + addVarArgChild(get(virtualRegisterForArgumentIncludingThis(index, registerOffset))); + for (; index < numChildren; ++index) +- addVarArgChild(jsConstant(jsUndefined())); ++ addVarArgChild(jsConstant(JSValue())); + Node* resultNode = addToGraph(Node::VarArg, FunctionBind, OpInfo(0), OpInfo(static_cast(argumentCountIncludingThis >= 2 ? argumentCountIncludingThis - 2 : 0))); + setResult(resultNode); + return CallOptimizationResult::Inlined; +diff --git a/Source/JavaScriptCore/dfg/DFGOperations.cpp b/Source/JavaScriptCore/dfg/DFGOperations.cpp +index ca316e1bd6d2..f19fcd7df41c 100644 +--- a/Source/JavaScriptCore/dfg/DFGOperations.cpp ++++ b/Source/JavaScriptCore/dfg/DFGOperations.cpp +@@ -2818,7 +2818,7 @@ JSC_DEFINE_JIT_OPERATION(operationFunctionToString, JSString*, (JSGlobalObject* + return function->toString(globalObject); + } + +-JSC_DEFINE_JIT_OPERATION(operationFunctionBind, JSBoundFunction*, (JSGlobalObject* globalObject, JSObject* target, unsigned boundArgsLength, EncodedJSValue boundThisValue, EncodedJSValue arg0Value, EncodedJSValue arg1Value, EncodedJSValue arg2Value)) ++JSC_DEFINE_JIT_OPERATION(operationFunctionBind, JSBoundFunction*, (JSGlobalObject* globalObject, JSObject* target, EncodedJSValue boundThisValue, EncodedJSValue arg0Value, EncodedJSValue arg1Value, EncodedJSValue arg2Value)) + { + VM& vm = globalObject->vm(); + CallFrame* callFrame = DECLARE_CALL_FRAME(vm); +@@ -2830,6 +2830,11 @@ JSC_DEFINE_JIT_OPERATION(operationFunctionBind, JSBoundFunction*, (JSGlobalObjec + return { }; + } + ++ unsigned boundArgsLength = 0; ++ boundArgsLength += !!(JSValue::decode(arg0Value)); ++ boundArgsLength += !!(JSValue::decode(arg1Value)); ++ boundArgsLength += !!(JSValue::decode(arg2Value)); ++ + JSValue boundThis = JSValue::decode(boundThisValue); + EncodedJSValue arguments[JSBoundFunction::maxEmbeddedArgs] { + arg0Value, +@@ -2871,7 +2876,7 @@ JSC_DEFINE_JIT_OPERATION(operationFunctionBind, JSBoundFunction*, (JSGlobalObjec + RELEASE_AND_RETURN(scope, JSBoundFunction::create(vm, globalObject, target, boundThis, boundArgs, length, name)); + } + +-JSC_DEFINE_JIT_OPERATION(operationNewBoundFunction, JSBoundFunction*, (JSGlobalObject* globalObject, JSFunction* function, unsigned boundArgsLength, EncodedJSValue boundThisValue, EncodedJSValue arg0Value, EncodedJSValue arg1Value, EncodedJSValue arg2Value)) ++JSC_DEFINE_JIT_OPERATION(operationNewBoundFunction, JSBoundFunction*, (JSGlobalObject* globalObject, JSFunction* function, EncodedJSValue boundThisValue, EncodedJSValue arg0Value, EncodedJSValue arg1Value, EncodedJSValue arg2Value)) + { + VM& vm = globalObject->vm(); + CallFrame* callFrame = DECLARE_CALL_FRAME(vm); +@@ -2880,6 +2885,10 @@ JSC_DEFINE_JIT_OPERATION(operationNewBoundFunction, JSBoundFunction*, (JSGlobalO + JSValue arg0 = JSValue::decode(arg0Value); + JSValue arg1 = JSValue::decode(arg1Value); + JSValue arg2 = JSValue::decode(arg2Value); ++ unsigned boundArgsLength = 0; ++ boundArgsLength += !!(arg0); ++ boundArgsLength += !!(arg1); ++ boundArgsLength += !!(arg2); + return JSBoundFunction::createRaw(vm, globalObject, function, boundArgsLength, boundThis, arg0, arg1, arg2); + } + +diff --git a/Source/JavaScriptCore/dfg/DFGOperations.h b/Source/JavaScriptCore/dfg/DFGOperations.h +index 9602feb3d66a..7e6080a3ec4e 100644 +--- a/Source/JavaScriptCore/dfg/DFGOperations.h ++++ b/Source/JavaScriptCore/dfg/DFGOperations.h +@@ -274,8 +274,8 @@ JSC_DECLARE_JIT_OPERATION(operationInt32ToStringWithValidRadix, char*, (JSGlobal + JSC_DECLARE_JIT_OPERATION(operationInt52ToStringWithValidRadix, char*, (JSGlobalObject*, int64_t, int32_t)); + JSC_DECLARE_JIT_OPERATION(operationDoubleToStringWithValidRadix, char*, (JSGlobalObject*, double, int32_t)); + JSC_DECLARE_JIT_OPERATION(operationFunctionToString, JSString*, (JSGlobalObject*, JSFunction*)); +-JSC_DECLARE_JIT_OPERATION(operationFunctionBind, JSBoundFunction*, (JSGlobalObject*, JSObject*, unsigned, EncodedJSValue, EncodedJSValue, EncodedJSValue, EncodedJSValue)); +-JSC_DECLARE_JIT_OPERATION(operationNewBoundFunction, JSBoundFunction*, (JSGlobalObject*, JSFunction*, unsigned, EncodedJSValue, EncodedJSValue, EncodedJSValue, EncodedJSValue)); ++JSC_DECLARE_JIT_OPERATION(operationFunctionBind, JSBoundFunction*, (JSGlobalObject*, JSObject*, EncodedJSValue, EncodedJSValue, EncodedJSValue, EncodedJSValue)); ++JSC_DECLARE_JIT_OPERATION(operationNewBoundFunction, JSBoundFunction*, (JSGlobalObject*, JSFunction*, EncodedJSValue, EncodedJSValue, EncodedJSValue, EncodedJSValue)); + + JSC_DECLARE_JIT_OPERATION(operationNormalizeMapKeyHeapBigInt, EncodedJSValue, (VM*, JSBigInt*)); + JSC_DECLARE_JIT_OPERATION(operationMapHash, UCPUStrictInt32, (JSGlobalObject*, EncodedJSValue input)); +diff --git a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp +index 167e61a8d1d0..67f5def0dceb 100644 +--- a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp ++++ b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp +@@ -6574,12 +6574,10 @@ void SpeculativeJIT::compileFunctionBind(Node* node) + + speculateObject(m_graph.child(node, 0), targetGPR); + +- unsigned boundArgsLength = node->numberOfBoundArguments(); +- + GPRFlushedCallResult result(this); + GPRReg resultGPR = result.gpr(); + flushRegisters(); +- callOperation(operationFunctionBind, resultGPR, LinkableConstant::globalObject(*this, node), targetGPR, TrustedImm32(boundArgsLength), boundThisRegs, arg0Regs, arg1Regs, arg2Regs); ++ callOperation(operationFunctionBind, resultGPR, LinkableConstant::globalObject(*this, node), targetGPR, boundThisRegs, arg0Regs, arg1Regs, arg2Regs); + exceptionCheck(); + cellResult(resultGPR, node); + } +@@ -6629,7 +6627,7 @@ void SpeculativeJIT::compileNewBoundFunction(Node* node) + store8(TrustedImm32(static_cast(TriState::Indeterminate)), Address(resultGPR, JSBoundFunction::offsetOfCanConstruct())); + mutatorFence(vm()); + +- addSlowPathGenerator(slowPathCall(slowPath, this, operationNewBoundFunction, resultGPR, LinkableConstant::globalObject(*this, node), targetGPR, TrustedImm32(node->numberOfBoundArguments()), boundThisRegs, arg0Regs, arg1Regs, arg2Regs)); ++ addSlowPathGenerator(slowPathCall(slowPath, this, operationNewBoundFunction, resultGPR, LinkableConstant::globalObject(*this, node), targetGPR, boundThisRegs, arg0Regs, arg1Regs, arg2Regs)); + cellResult(resultGPR, node); + } + +diff --git a/Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp b/Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp +index 2dda50507633..704d0dd68d8c 100644 +--- a/Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp ++++ b/Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp +@@ -7339,7 +7339,7 @@ IGNORE_CLANG_WARNINGS_END + LValue callResult = lazySlowPath( + [=, &vm] (const Vector& locations) -> RefPtr { + return createLazyCallGenerator(vm, operationNewBoundFunction, locations[0].directGPR(), +- CCallHelpers::TrustedImmPtr(globalObject), locations[1].directGPR(), CCallHelpers::TrustedImm32(numberOfBoundArguments), ++ CCallHelpers::TrustedImmPtr(globalObject), locations[1].directGPR(), + locations[2].directGPR(), locations[3].directGPR(), locations[4].directGPR(), locations[5].directGPR()); + }, + target, thisValue, arg0, arg1, arg2); +@@ -9014,8 +9014,7 @@ IGNORE_CLANG_WARNINGS_END + void compileFunctionBind() + { + JSGlobalObject* globalObject = m_graph.globalObjectFor(m_origin.semantic); +- unsigned boundArgsLength = m_node->numberOfBoundArguments(); +- setJSValue(vmCall(pointerType(), operationFunctionBind, weakPointer(globalObject), lowObject(m_graph.child(m_node, 0)), m_out.constInt32(boundArgsLength), lowJSValue(m_graph.child(m_node, 1)), lowJSValue(m_graph.child(m_node, 2)), lowJSValue(m_graph.child(m_node, 3)), lowJSValue(m_graph.child(m_node, 4)))); ++ setJSValue(vmCall(pointerType(), operationFunctionBind, weakPointer(globalObject), lowObject(m_graph.child(m_node, 0)), lowJSValue(m_graph.child(m_node, 1)), lowJSValue(m_graph.child(m_node, 2)), lowJSValue(m_graph.child(m_node, 3)), lowJSValue(m_graph.child(m_node, 4)))); + } + + void compileToPrimitive() diff --git a/sources b/sources index 5483fdc..3ff5b9f 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (webkitgtk-2.40.0.tar.xz) = 550dafb31d71edf984d6b7636366f839d31f6b244b87f83c6efe7af17efe3f2f63268d2c39a6a3c474afadf2b30df868efaefcf38197b30cc6b11c63de7d2ddc -SHA512 (webkitgtk-2.40.0.tar.xz.asc) = 782887d27adad7791dd4dc8e070c9c10c711da70907bddf988b739d03c3e2f3d49f433e3afc325801cf42aebe9689110122d6145b69d9696bf8eef5ae525062c +SHA512 (webkitgtk-2.41.1.tar.xz) = a64e112855b53329d99b3f06239e2a7e593a4b22c4c91d87ae67cc37441fdd57458cfcd69151c43a614e10406b25d5f77c43f6865bb5883e32c25c993a506c37 +SHA512 (webkitgtk-2.41.1.tar.xz.asc) = a622232ba91291e3a19cb3693b415e2cf2005bdb52e92054dbe5ced56663d471a1a8942c1a2f53f46124910a270aaec72272ee03e3a590729e195571eab329fe diff --git a/unbreak-script-message-received.patch b/unbreak-script-message-received.patch deleted file mode 100644 index df91be8..0000000 --- a/unbreak-script-message-received.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 7bcb97382f2f347dc348c3c31416ae7fd760ce6b Mon Sep 17 00:00:00 2001 -From: Michael Catanzaro -Date: Fri, 17 Mar 2023 15:39:52 -0500 -Subject: [PATCH] REGRESSION(261320@main): [GLib] Broke - WebKitUserContentManager::script-message-received - https://bugs.webkit.org/show_bug.cgi?id=254089 - -Reviewed by NOBODY (OOPS!). - -I forgot to update the marshaller used by -WebKitUserContentManager::script-message-received. It worked perfectly -fine in my development environment for whatever reason, but was broken -in at least Ephy Tech Preview. - -* Source/WebKit/UIProcess/API/glib/WebKitUserContentManager.cpp: ---- - Source/WebKit/UIProcess/API/glib/WebKitUserContentManager.cpp | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/Source/WebKit/UIProcess/API/glib/WebKitUserContentManager.cpp b/Source/WebKit/UIProcess/API/glib/WebKitUserContentManager.cpp -index af2d963bb3b3..f778b19bc816 100644 ---- a/Source/WebKit/UIProcess/API/glib/WebKitUserContentManager.cpp -+++ b/Source/WebKit/UIProcess/API/glib/WebKitUserContentManager.cpp -@@ -106,7 +106,11 @@ static void webkit_user_content_manager_class_init(WebKitUserContentManagerClass - G_TYPE_FROM_CLASS(gObjectClass), - static_cast(G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED), - 0, nullptr, nullptr, -+#if ENABLE(2022_GLIB_API) -+ g_cclosure_marshal_VOID__OBJECT, -+#else - g_cclosure_marshal_VOID__BOXED, -+#endif - G_TYPE_NONE, 1, - #if ENABLE(2022_GLIB_API) - JSC_TYPE_VALUE); diff --git a/webkitgtk.spec b/webkitgtk.spec index a1b859a..48f0df0 100644 --- a/webkitgtk.spec +++ b/webkitgtk.spec @@ -16,7 +16,7 @@ %bcond_without docs Name: webkitgtk -Version: 2.40.0 +Version: 2.41.1 Release: %autorelease Summary: GTK web content engine library @@ -29,8 +29,13 @@ Source1: https://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz.asc # $ gpg --export --export-options export-minimal D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3 5AA3BC334FD7E3369E7C77B291C559DBE4C9123B > webkitgtk-keys.gpg Source2: webkitgtk-keys.gpg -# https://github.com/WebKit/WebKit/pull/11664 -Patch0: unbreak-script-message-received.patch +# https://commits.webkit.org/262385@main +Patch0: crashy-jit.patch + +# https://commits.webkit.org/262339@main +# https://commits.webkit.org/262434@main +# https://github.com/WebKit/WebKit/pull/12250 +Patch1: build.patch BuildRequires: bison BuildRequires: bubblewrap