From cf483335bc05841b15d18738f9924146f2025a1f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 23 Jul 2014 15:46:17 +0200 Subject: [PATCH 01/20] Fix CLoop on ppc32 and s390 Add geoclue-devel as BR as WK1 needs it --- webkitgtk-2.4.1-cloop_fix.patch | 87 ++++++++++++++++++++++++++++----- webkitgtk3.spec | 13 +++-- 2 files changed, 82 insertions(+), 18 deletions(-) diff --git a/webkitgtk-2.4.1-cloop_fix.patch b/webkitgtk-2.4.1-cloop_fix.patch index c5d9668..2675caf 100644 --- a/webkitgtk-2.4.1-cloop_fix.patch +++ b/webkitgtk-2.4.1-cloop_fix.patch @@ -1,6 +1,6 @@ -diff -up webkitgtk-2.4.1/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.cloop_fix webkitgtk-2.4.1/Source/JavaScriptCore/interpreter/ProtoCallFrame.h ---- webkitgtk-2.4.1/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.cloop_fix 2014-04-14 08:40:44.000000000 +0200 -+++ webkitgtk-2.4.1/Source/JavaScriptCore/interpreter/ProtoCallFrame.h 2014-04-30 16:10:49.120156216 +0200 +diff -up webkitgtk-2.4.4/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.cloop_fix webkitgtk-2.4.4/Source/JavaScriptCore/interpreter/ProtoCallFrame.h +--- webkitgtk-2.4.4/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.cloop_fix 2014-07-23 14:15:45.497658648 +0200 ++++ webkitgtk-2.4.4/Source/JavaScriptCore/interpreter/ProtoCallFrame.h 2014-07-23 14:16:46.997687779 +0200 @@ -36,7 +36,7 @@ struct ProtoCallFrame { Register calleeValue; Register argCountAndCodeOriginValue; @@ -19,9 +19,9 @@ diff -up webkitgtk-2.4.1/Source/JavaScriptCore/interpreter/ProtoCallFrame.h.cloo void clearCurrentVPC() { argCountAndCodeOriginValue.tag() = 0; } -diff -up webkitgtk-2.4.1/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix webkitgtk-2.4.1/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp ---- webkitgtk-2.4.1/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix 2014-04-30 16:11:18.457540050 +0200 -+++ webkitgtk-2.4.1/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp 2014-04-30 16:11:50.944965101 +0200 +diff -up webkitgtk-2.4.4/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix webkitgtk-2.4.4/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp +--- webkitgtk-2.4.4/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fix 2014-07-23 14:16:02.057667404 +0200 ++++ webkitgtk-2.4.4/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp 2014-07-23 14:16:46.997687779 +0200 @@ -1354,7 +1354,7 @@ LLINT_SLOW_PATH_DECL(slow_path_get_from_ CodeBlock* codeBlock = exec->codeBlock(); ConcurrentJITLocker locker(codeBlock->m_lock); @@ -40,9 +40,9 @@ diff -up webkitgtk-2.4.1/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp.cloop_fi } } -diff -up webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix 2014-04-14 08:40:44.000000000 +0200 -+++ webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2014-04-30 16:12:35.648549985 +0200 +diff -up webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm +--- webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix 2014-07-23 14:16:13.047672325 +0200 ++++ webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2014-07-23 14:18:27.547721786 +0200 @@ -282,7 +282,7 @@ macro doCallToJavaScript(makeCall, doRet storep temp3, CodeBlock+4[cfr, temp1, 8] btinz temp1, .copyHeaderLoop @@ -52,7 +52,68 @@ diff -up webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.as subi 1, temp2 loadi ProtoCallFrame::paddedArgCount[protoCallFrame], temp3 subi 1, temp3 -@@ -2277,7 +2277,7 @@ macro loadWithStructureCheck(operand, sl +@@ -321,7 +321,7 @@ macro doCallToJavaScript(makeCall, doRet + + .calleeFramePopped: + loadp Callee[cfr], temp3 # VM.topCallFrame +- loadp ScopeChain[cfr], temp4 ++ loadp ScopeChain + PayloadOffset[cfr], temp4 + storep temp4, [temp3] + + doReturn(extraStackSpace) +@@ -598,7 +598,7 @@ end + + + macro branchIfException(label) +- loadp ScopeChain[cfr], t3 ++ loadp ScopeChain + PayloadOffset[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + bieq VM::m_exception + TagOffset[t3], EmptyValueTag, .noException +@@ -2039,7 +2039,7 @@ _llint_op_catch: + # the interpreter's throw trampoline (see _llint_throw_trampoline). + # The throwing code must have known that we were throwing to the interpreter, + # and have set VM::targetInterpreterPCForThrow. +- loadp ScopeChain[cfr], t3 ++ loadp ScopeChain + PayloadOffset[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + loadp VM::callFrameForThrow[t3], cfr +@@ -2159,7 +2159,7 @@ macro nativeCallTrampoline(executableOff + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + elsif C_LOOP +- loadp ScopeChain[cfr], t3 ++ loadp ScopeChain + PayloadOffset[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + storep cfr, VM::topCallFrame[t3] +@@ -2172,7 +2172,7 @@ macro nativeCallTrampoline(executableOff + move t2, cfr + cloopCallNative executableOffsetToFunction[t1] + restoreReturnAddressBeforeReturn(t3) +- loadp ScopeChain[cfr], t3 ++ loadp ScopeChain + PayloadOffset[cfr], t3 + andp MarkedBlockMask, t3 + loadp MarkedBlock::m_weakSet + WeakSet::m_vm[t3], t3 + else +@@ -2212,7 +2212,7 @@ macro resolveScope() + addi 1, t2 + + .resolveScopeAfterActivationCheck: +- loadp ScopeChain[cfr], t0 ++ loadp ScopeChain + PayloadOffset[cfr], t0 + btiz t2, .resolveScopeLoopEnd + + .resolveScopeLoop: +@@ -2271,13 +2271,13 @@ _llint_op_resolve_scope: + + macro loadWithStructureCheck(operand, slowPath) + loadisFromInstruction(operand, t0) +- loadp [cfr, t0, 8], t0 ++ loadp PayloadOffset[cfr, t0, 8], t0 + loadpFromInstruction(5, t1) + bpneq JSCell::m_structure[t0], t1, slowPath end macro getProperty() @@ -88,9 +149,9 @@ diff -up webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.as storei t2, TagOffset[t0, t1, 8] storei t3, PayloadOffset[t0, t1, 8] end -diff -up webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm ---- webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix 2014-04-14 08:40:44.000000000 +0200 -+++ webkitgtk-2.4.1/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2014-04-30 16:10:49.121156229 +0200 +diff -up webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm +--- webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm.cloop_fix 2014-07-23 14:16:19.147675074 +0200 ++++ webkitgtk-2.4.4/Source/JavaScriptCore/llint/LowLevelInterpreter64.asm 2014-07-23 14:16:46.997687779 +0200 @@ -171,7 +171,7 @@ macro doCallToJavaScript(makeCall, doRet storep temp3, CodeBlock[cfr, temp1, 8] btinz temp1, .copyHeaderLoop diff --git a/webkitgtk3.spec b/webkitgtk3.spec index e68d9b1..bbdf15f 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -7,7 +7,7 @@ Name: webkitgtk3 Version: 2.4.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -33,6 +33,7 @@ BuildRequires: flex BuildRequires: fontconfig-devel >= 2.5 BuildRequires: freetype-devel BuildRequires: geoclue2-devel +BuildRequires: geoclue-devel BuildRequires: gettext BuildRequires: gperf BuildRequires: gstreamer1-devel @@ -99,16 +100,14 @@ This package contains developer documentation for %{name}. %prep %setup -qn "webkitgtk-%{version}" %patch0 -p1 -b .nspluginwrapper +%patch11 -p1 -b .cloop_fix %ifarch ppc s390 %patch4 -p1 -b .double2intsPPC32 %endif %ifarch aarch64 %patch10 -p1 -b .aarch64 %endif -%ifarch %{power64} s390x -%patch11 -p1 -b .cloop_fix -%endif -%ifarch %{power64} aarch64 +%ifarch %{power64} aarch64 ppc %patch12 -p1 -b .ppc64_align %endif %ifarch %{power64} @@ -237,6 +236,10 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed Jul 23 2014 Tomas Popela - 2.4.4-3 +- Fix CLoop on ppc32 and s390 +- Add geoclue-devel as BR as WK1 needs it + * Tue Jul 22 2014 Kalev Lember - 2.4.4-2 - Rebuilt for gobject-introspection 1.41.4 From c12d74747d25d079d5a924f965d7952052eb39cc Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 23 Jul 2014 16:35:00 +0200 Subject: [PATCH 02/20] Remove geoclue-devel from BR --- webkitgtk3.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index bbdf15f..f56c128 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -7,7 +7,7 @@ Name: webkitgtk3 Version: 2.4.4 -Release: 3%{?dist} +Release: 4%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -33,7 +33,6 @@ BuildRequires: flex BuildRequires: fontconfig-devel >= 2.5 BuildRequires: freetype-devel BuildRequires: geoclue2-devel -BuildRequires: geoclue-devel BuildRequires: gettext BuildRequires: gperf BuildRequires: gstreamer1-devel @@ -236,6 +235,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed Jul 23 2014 Tomas Popela - 2.4.4-4 +- Remove geoclue-devel from BR + * Wed Jul 23 2014 Tomas Popela - 2.4.4-3 - Fix CLoop on ppc32 and s390 - Add geoclue-devel as BR as WK1 needs it From 295dc73cdad5a962d5deba2566bee0af06b98678 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mon, 18 Aug 2014 08:26:36 +0000 Subject: [PATCH 03/20] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index f56c128..2f0e97c 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -7,7 +7,7 @@ Name: webkitgtk3 Version: 2.4.4 -Release: 4%{?dist} +Release: 5%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -235,6 +235,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Mon Aug 18 2014 Fedora Release Engineering - 2.4.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + * Wed Jul 23 2014 Tomas Popela - 2.4.4-4 - Remove geoclue-devel from BR From e8ecc3d6de9f3e7c527d604a3bb79862126432b1 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 26 Aug 2014 12:58:01 +0200 Subject: [PATCH 04/20] Update to 2.4.5 --- sources | 2 +- ...atch => webkitgtk-2.4.5-cloop_fix_32.patch | 12 ++++---- webkitgtk3.spec | 28 +++++++++---------- 3 files changed, 20 insertions(+), 22 deletions(-) rename webkit-2.1.90-double2intsPPC32.patch => webkitgtk-2.4.5-cloop_fix_32.patch (54%) diff --git a/sources b/sources index f691369..6b4c673 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -79edd28d32172abc17a8861622cc274f webkitgtk-2.4.4.tar.xz +c2e1687bb0314a0948fbf78e2d1e931f webkitgtk-2.4.5.tar.xz diff --git a/webkit-2.1.90-double2intsPPC32.patch b/webkitgtk-2.4.5-cloop_fix_32.patch similarity index 54% rename from webkit-2.1.90-double2intsPPC32.patch rename to webkitgtk-2.4.5-cloop_fix_32.patch index b904490..96c53ad 100644 --- a/webkit-2.1.90-double2intsPPC32.patch +++ b/webkitgtk-2.4.5-cloop_fix_32.patch @@ -1,6 +1,6 @@ -diff -up webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.double2intsPPC32 webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ---- webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.double2intsPPC32 2013-08-28 21:06:29.000000000 +0200 -+++ webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2013-09-12 15:32:34.000000000 +0200 +diff -up webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_32 webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm +--- webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm.cloop_fix_32 2013-08-28 21:06:29.000000000 +0200 ++++ webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm 2013-09-12 15:32:34.000000000 +0200 @@ -1679,7 +1679,7 @@ _llint_op_next_pname: loadi 20[PC], t2 loadi PayloadOffset[cfr, t2, 8], t2 @@ -10,9 +10,9 @@ diff -up webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter32_64 addi 1, t0 storei t0, PayloadOffset[cfr, t1, 8] loadi 4[PC], t1 -diff -up webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.double2intsPPC32 webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter.asm ---- webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.double2intsPPC32 2013-08-28 21:06:29.000000000 +0200 -+++ webkitgtk-2.1.90.1/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2013-09-12 15:32:34.000000000 +0200 +diff -up webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_32 webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter.asm +--- webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter.asm.cloop_fix_32 2013-08-28 21:06:29.000000000 +0200 ++++ webkitgtk-2.4.5/Source/JavaScriptCore/llint/LowLevelInterpreter.asm 2013-09-12 15:32:34.000000000 +0200 @@ -276,13 +276,13 @@ macro assertNotConstant(index) end diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 2f0e97c..2da9831 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -6,8 +6,8 @@ cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk3 -Version: 2.4.4 -Release: 5%{?dist} +Version: 2.4.5 +Release: 1%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -17,12 +17,10 @@ URL: http://www.webkitgtk.org/ Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz Patch0: webkit-1.1.14-nspluginwrapper.patch -# https://bugs.webkit.org/show_bug.cgi?id=103128 -Patch4: webkit-2.1.90-double2intsPPC32.patch -Patch10: webkitgtk-aarch64.patch -Patch11: webkitgtk-2.4.1-cloop_fix.patch -Patch12: webkitgtk-2.4.1-ppc64_align.patch -Patch13: webkitgtk-2.4.2-ppc64le.patch +Patch1: webkitgtk-aarch64.patch +Patch2: webkitgtk-2.4.1-cloop_fix.patch +Patch3: webkitgtk-2.4.5-cloop_fix_32.patch +Patch4: webkitgtk-2.4.1-ppc64_align.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -99,18 +97,15 @@ This package contains developer documentation for %{name}. %prep %setup -qn "webkitgtk-%{version}" %patch0 -p1 -b .nspluginwrapper -%patch11 -p1 -b .cloop_fix +%patch2 -p1 -b .cloop_fix %ifarch ppc s390 -%patch4 -p1 -b .double2intsPPC32 +%patch3 -p1 -b .cloop_fix_32 %endif %ifarch aarch64 -%patch10 -p1 -b .aarch64 +%patch1 -p1 -b .aarch64 %endif %ifarch %{power64} aarch64 ppc -%patch12 -p1 -b .ppc64_align -%endif -%ifarch %{power64} -%patch13 -p1 -b .ppc64le +%patch4 -p1 -b .ppc64_align %endif %build @@ -235,6 +230,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Aug 26 2014 Tomas Popela - 2.4.5-1 +- Update to 2.4.5 + * Mon Aug 18 2014 Fedora Release Engineering - 2.4.4-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild From 887f8f17c2df3e621057594672331adcf966e54f Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 26 Aug 2014 13:05:06 +0200 Subject: [PATCH 05/20] Remove the PPC64LE patch that was upstreamed --- webkitgtk-2.4.2-ppc64le.patch | 69 ----------------------------------- 1 file changed, 69 deletions(-) delete mode 100644 webkitgtk-2.4.2-ppc64le.patch diff --git a/webkitgtk-2.4.2-ppc64le.patch b/webkitgtk-2.4.2-ppc64le.patch deleted file mode 100644 index 3618d98..0000000 --- a/webkitgtk-2.4.2-ppc64le.patch +++ /dev/null @@ -1,69 +0,0 @@ -diff -up webkitgtk-2.4.2/Source/WTF/wtf/dtoa/utils.h.ppc64le webkitgtk-2.4.2/Source/WTF/wtf/dtoa/utils.h ---- webkitgtk-2.4.2/Source/WTF/wtf/dtoa/utils.h.ppc64le 2014-05-14 15:37:26.360159487 +0200 -+++ webkitgtk-2.4.2/Source/WTF/wtf/dtoa/utils.h 2014-05-14 15:38:46.938315499 +0200 -@@ -49,7 +49,7 @@ - defined(__ARMEL__) || \ - defined(_MIPS_ARCH_MIPS32R2) - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 --#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) -+#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 - #elif defined(_M_IX86) || defined(__i386__) - #if defined(_WIN32) -diff -up webkitgtk-2.4.2/Source/WTF/wtf/Platform.h.ppc64le webkitgtk-2.4.2/Source/WTF/wtf/Platform.h ---- webkitgtk-2.4.2/Source/WTF/wtf/Platform.h.ppc64le 2014-05-12 08:03:53.000000000 +0200 -+++ webkitgtk-2.4.2/Source/WTF/wtf/Platform.h 2014-05-14 15:39:08.402622454 +0200 -@@ -101,24 +101,38 @@ - #endif /* MIPS */ - - /* CPU(PPC) - PowerPC 32-bit */ --#if defined(__ppc__) \ -+#if ( defined(__ppc__) \ - || defined(__PPC__) \ - || defined(__powerpc__) \ - || defined(__powerpc) \ - || defined(__POWERPC__) \ - || defined(_M_PPC) \ -- || defined(__PPC) -+ || defined(__PPC)) \ -+ && defined(__BYTE_ORDER__) \ -+ && (__BYTE_ORDER__==__ORDER_BIG_ENDIAN__) - #define WTF_CPU_PPC 1 - #define WTF_CPU_BIG_ENDIAN 1 - #endif - --/* CPU(PPC64) - PowerPC 64-bit */ --#if defined(__ppc64__) \ -- || defined(__PPC64__) -+/* CPU(PPC64) - PowerPC 64-bit Big Endian */ -+#if ( defined(__ppc64__) \ -+ || defined(__PPC64__)) \ -+ && defined(__BYTE_ORDER__) \ -+ && (__BYTE_ORDER__==__ORDER_BIG_ENDIAN__) - #define WTF_CPU_PPC64 1 - #define WTF_CPU_BIG_ENDIAN 1 - #endif - -+/* CPU(PPC64) - PowerPC 64-bit Little Endian */ -+#if ( defined(__ppc64__) \ -+ || defined(__PPC64__) \ -+ || defined(__ppc64le__) \ -+ || defined(__PPC64LE__)) \ -+ && defined(__BYTE_ORDER__) \ -+ && (__BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__) -+#define WTF_CPU_PPC64LE 1 -+#endif -+ - /* CPU(SH4) - SuperH SH-4 */ - #if defined(__SH4__) - #define WTF_CPU_SH4 1 -@@ -641,7 +655,8 @@ - || CPU(ALPHA) \ - || CPU(ARM64) \ - || CPU(S390X) \ -- || CPU(PPC64) -+ || CPU(PPC64) \ -+ || CPU(PPC64LE) - #define WTF_USE_JSVALUE64 1 - #else - #define WTF_USE_JSVALUE32_64 1 From 5d6c646b7a195102525829ca60eadb2ffae27f2e Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Tue, 26 Aug 2014 17:52:14 +0200 Subject: [PATCH 06/20] Disable support for webkit2 API It's now provided by the webkitgtk4 package. --- webkitgtk3.spec | 42 ++++++------------------------------------ 1 file changed, 6 insertions(+), 36 deletions(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 2da9831..fac0b0b 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -7,7 +7,7 @@ Name: webkitgtk3 Version: 2.4.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -65,21 +65,10 @@ GTK+ platform. This package contains WebKitGTK+ for GTK+ 3. -%package -n libwebkit2gtk -Summary: The libwebkit2gtk library -Group: Development/Libraries -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: geoclue2 - -%description -n libwebkit2gtk -The libwebkit2gtk package contains the libwebkit2gtk library -that is part of %{name}. - %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: libwebkit2gtk%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries, build data, and header @@ -128,6 +117,7 @@ This package contains developer documentation for %{name}. %configure \ --with-gtk=3.0 \ + --disable-webkit2 \ %ifarch s390 s390x ppc %{power64} aarch64 --disable-jit \ %else @@ -150,16 +140,11 @@ make install DESTDIR=%{buildroot} install -d -m 755 %{buildroot}%{_libexecdir}/%{name} install -m 755 Programs/GtkLauncher %{buildroot}%{_libexecdir}/%{name} -install -m 755 Programs/MiniBrowser %{buildroot}%{_libexecdir}/%{name} # Remove lib64 rpaths chrpath --delete %{buildroot}%{_bindir}/jsc-3 chrpath --delete %{buildroot}%{_libdir}/libwebkitgtk-3.0.so -chrpath --delete %{buildroot}%{_libdir}/libwebkit2gtk-3.0.so chrpath --delete %{buildroot}%{_libexecdir}/%{name}/GtkLauncher -chrpath --delete %{buildroot}%{_libexecdir}/%{name}/MiniBrowser -chrpath --delete %{buildroot}%{_libexecdir}/WebKitPluginProcess -chrpath --delete %{buildroot}%{_libexecdir}/WebKitWebProcess # Remove .la files find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete @@ -183,9 +168,6 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %post -p /sbin/ldconfig %postun -p /sbin/ldconfig -%post -n libwebkit2gtk -p /sbin/ldconfig -%postun -n libwebkit2gtk -p /sbin/ldconfig - %files -f WebKitGTK-3.0.lang %doc %{_pkgdocdir}/ @@ -197,39 +179,27 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_libexecdir}/%{name}/GtkLauncher %{_datadir}/webkitgtk-3.0 -%files -n libwebkit2gtk -%{_libdir}/libwebkit2gtk-3.0.so.* -%{_libdir}/webkit2gtk-3.0/ -%{_libdir}/girepository-1.0/WebKit2-3.0.typelib -%{_libdir}/girepository-1.0/WebKit2WebExtension-3.0.typelib -%{_libexecdir}/%{name}/MiniBrowser -%{_libexecdir}/WebKitNetworkProcess -%{_libexecdir}/WebKitPluginProcess -%{_libexecdir}/WebKitWebProcess - %files devel %{_bindir}/jsc-3 %{_includedir}/webkitgtk-3.0 %{_libdir}/libwebkitgtk-3.0.so -%{_libdir}/libwebkit2gtk-3.0.so %{_libdir}/libjavascriptcoregtk-3.0.so %{_libdir}/pkgconfig/webkitgtk-3.0.pc -%{_libdir}/pkgconfig/webkit2gtk-3.0.pc -%{_libdir}/pkgconfig/webkit2gtk-web-extension-3.0.pc %{_libdir}/pkgconfig/javascriptcoregtk-3.0.pc %{_datadir}/gir-1.0/WebKit-3.0.gir -%{_datadir}/gir-1.0/WebKit2-3.0.gir -%{_datadir}/gir-1.0/WebKit2WebExtension-3.0.gir %{_datadir}/gir-1.0/JavaScriptCore-3.0.gir %files doc %dir %{_datadir}/gtk-doc %dir %{_datadir}/gtk-doc/html %{_datadir}/gtk-doc/html/webkitgtk -%{_datadir}/gtk-doc/html/webkit2gtk %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Aug 26 2014 Kalev Lember - 2.4.5-2 +- Disable support for webkit2 API which is now provided by the webkitgtk4 + package + * Tue Aug 26 2014 Tomas Popela - 2.4.5-1 - Update to 2.4.5 From 9fc1b985881a08401b166d74bfddbb5c3283aecf Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 2 Sep 2014 11:44:13 +0200 Subject: [PATCH 07/20] Rebase the aarch64 patch --- webkitgtk-aarch64.patch | 38 ++++++++++++++++++++------------------ webkitgtk3.spec | 9 +++++---- 2 files changed, 25 insertions(+), 22 deletions(-) diff --git a/webkitgtk-aarch64.patch b/webkitgtk-aarch64.patch index fe54daa..7272bc1 100644 --- a/webkitgtk-aarch64.patch +++ b/webkitgtk-aarch64.patch @@ -1,6 +1,19 @@ ---- webkitgtk-2.3.5/Source/WTF/wtf/Platform.h.orig 2014-02-04 16:38:03.000000000 +0000 -+++ webkitgtk-2.3.5/Source/WTF/wtf/Platform.h 2014-02-07 10:50:32.639441614 +0000 -@@ -317,6 +317,14 @@ +diff -up webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h.aarch64 webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h +--- webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h.aarch64 2014-09-02 11:39:15.782812173 +0200 ++++ webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h 2014-09-02 11:41:23.022637099 +0200 +@@ -49,7 +49,7 @@ + defined(__ARMEL__) || \ + defined(_MIPS_ARCH_MIPS32R2) + #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 +-#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) ++#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(AARCH64) || CPU(HPPA) + #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 + #elif defined(_M_IX86) || defined(__i386__) + #if defined(_WIN32) +diff -up webkitgtk-2.4.5/Source/WTF/wtf/Platform.h.aarch64 webkitgtk-2.4.5/Source/WTF/wtf/Platform.h +--- webkitgtk-2.4.5/Source/WTF/wtf/Platform.h.aarch64 2014-08-25 14:50:32.000000000 +0200 ++++ webkitgtk-2.4.5/Source/WTF/wtf/Platform.h 2014-09-02 11:40:40.925033307 +0200 +@@ -331,6 +331,14 @@ #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1 #endif @@ -15,24 +28,13 @@ /* ==== OS() - underlying operating system; only to be used for mandated low-level services like virtual memory, not to choose a GUI toolkit ==== */ -@@ -641,7 +649,8 @@ - || CPU(ALPHA) \ +@@ -656,7 +664,8 @@ || CPU(ARM64) \ || CPU(S390X) \ -- || CPU(PPC64) -+ || CPU(PPC64) \ + || CPU(PPC64) \ +- || CPU(PPC64LE) ++ || CPU(PPC64LE) \ + || CPU(AARCH64) #define WTF_USE_JSVALUE64 1 #else #define WTF_USE_JSVALUE32_64 1 ---- webkitgtk-2.3.5/Source/WTF/wtf/dtoa/utils.h.orig 2014-02-07 10:50:15.238174894 +0000 -+++ webkitgtk-2.3.5/Source/WTF/wtf/dtoa/utils.h 2014-02-07 10:50:32.640441629 +0000 -@@ -49,7 +49,7 @@ - defined(__ARMEL__) || \ - defined(_MIPS_ARCH_MIPS32R2) - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 --#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) -+#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(AARCH64) || CPU(HPPA) - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 - #elif defined(_M_IX86) || defined(__i386__) - #if defined(_WIN32) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index fac0b0b..f068617 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -7,7 +7,7 @@ Name: webkitgtk3 Version: 2.4.5 -Release: 2%{?dist} +Release: 3%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -86,13 +86,11 @@ This package contains developer documentation for %{name}. %prep %setup -qn "webkitgtk-%{version}" %patch0 -p1 -b .nspluginwrapper +%patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif -%ifarch aarch64 -%patch1 -p1 -b .aarch64 -%endif %ifarch %{power64} aarch64 ppc %patch4 -p1 -b .ppc64_align %endif @@ -196,6 +194,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Sep 02 2014 Tomas Popela - 2.4.5-3 +- Rebase the aarch64 patch + * Tue Aug 26 2014 Kalev Lember - 2.4.5-2 - Disable support for webkit2 API which is now provided by the webkitgtk4 package From d09a475329dcb0cc086db2d5615b9dcbee4640b0 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 3 Sep 2014 09:16:48 +0200 Subject: [PATCH 08/20] Run make with -j1 to let it successfully compile in brew --- webkitgtk3.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index f068617..0e13d38 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -131,7 +131,10 @@ mkdir -p DerivedSources/webkitdom/ mkdir -p DerivedSources/InjectedBundle mkdir -p DerivedSources/Platform -make %{_smp_mflags} V=1 +# Disable the parallel compilation as it fails to compile in brew. +# https://bugs.webkit.org/show_bug.cgi?id=34846 +# make %{_smp_mflags} V=1 +make -j1 V=1 %install make install DESTDIR=%{buildroot} @@ -196,6 +199,7 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %changelog * Tue Sep 02 2014 Tomas Popela - 2.4.5-3 - Rebase the aarch64 patch +- Run make with -j1 to let it successfully compile in brew * Tue Aug 26 2014 Kalev Lember - 2.4.5-2 - Disable support for webkit2 API which is now provided by the webkitgtk4 From f2dd5015145996e658db68d2a0c454eae0d6a8fb Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Mon, 29 Sep 2014 11:43:04 +0200 Subject: [PATCH 09/20] Update to 2.4.6 --- sources | 2 +- webkitgtk3.spec | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sources b/sources index 6b4c673..6f48645 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -c2e1687bb0314a0948fbf78e2d1e931f webkitgtk-2.4.5.tar.xz +b0d019777754bb5779de8b9ad1dd6bfe webkitgtk-2.4.6.tar.xz diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 0e13d38..34e1025 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -6,8 +6,8 @@ cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk3 -Version: 2.4.5 -Release: 3%{?dist} +Version: 2.4.6 +Release: 1%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -197,6 +197,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Mon Sep 29 2014 Tomas Popela - 2.4.6-1 +- Update to 2.4.6 + * Tue Sep 02 2014 Tomas Popela - 2.4.5-3 - Rebase the aarch64 patch - Run make with -j1 to let it successfully compile in brew From 0ece871b3f50a47c2e7d0e0887c7cbc9fad1e625 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 21 Oct 2014 10:18:42 +0200 Subject: [PATCH 10/20] Disable the SSLv3 to address the POODLE vulnerability --- webkitgtk-2.4.6-poodle.patch | 47 ++++++++++++++++++++++++++++++++++++ webkitgtk3.spec | 8 +++++- 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.6-poodle.patch diff --git a/webkitgtk-2.4.6-poodle.patch b/webkitgtk-2.4.6-poodle.patch new file mode 100644 index 0000000..2404f6f --- /dev/null +++ b/webkitgtk-2.4.6-poodle.patch @@ -0,0 +1,47 @@ +diff -up webkitgtk-2.4.6/Source/WebKit2/gtk/MainGtk.cpp.poodle webkitgtk-2.4.6/Source/WebKit2/gtk/MainGtk.cpp +--- webkitgtk-2.4.6/Source/WebKit2/gtk/MainGtk.cpp.poodle 2014-10-21 10:08:32.851222903 +0200 ++++ webkitgtk-2.4.6/Source/WebKit2/gtk/MainGtk.cpp 2014-10-21 10:08:31.234199110 +0200 +@@ -26,7 +26,19 @@ + + #include "WebProcessMainGtk.h" + ++#include ++ + int main(int argc, char** argv) + { ++ // Disable SSLv3 very early because it is practically impossible to safely ++ // use setenv() when multiple threads are running, as another thread calling ++ // getenv() could cause a crash, and many functions use getenv() internally. ++ // This workaround will stop working if glib-networking switches away from ++ // GnuTLS or simply stops parsing this variable. We intentionally do not ++ // overwrite this priority string if it's already set by the user. ++ // Keep this in sync with NetworkMainUnix.cpp. ++ // https://bugzilla.gnome.org/show_bug.cgi?id=738633 ++ setenv("G_TLS_GNUTLS_PRIORITY", "NORMAL:%COMPAT:!VERS-SSL3.0", 0); ++ + return WebKit::WebProcessMainGtk(argc, argv); + } +diff -up webkitgtk-2.4.6/Source/WebKit2/unix/NetworkMainUnix.cpp.poodle webkitgtk-2.4.6/Source/WebKit2/unix/NetworkMainUnix.cpp +--- webkitgtk-2.4.6/Source/WebKit2/unix/NetworkMainUnix.cpp.poodle 2014-10-21 10:03:39.622908372 +0200 ++++ webkitgtk-2.4.6/Source/WebKit2/unix/NetworkMainUnix.cpp 2014-10-21 10:07:38.017416084 +0200 +@@ -30,8 +30,20 @@ + + #include "NetworkProcessMainUnix.h" + ++#include ++ + int main(int argc, char** argv) + { ++ // Disable SSLv3 very early because it is practically impossible to safely ++ // use setenv() when multiple threads are running, as another thread calling ++ // getenv() could cause a crash, and many functions use getenv() internally. ++ // This workaround will stop working if glib-networking switches away from ++ // GnuTLS or simply stops parsing this variable. We intentionally do not ++ // overwrite this priority string if it's already set by the user. ++ // Keep this in sync with MainGtk.cpp. ++ // https://bugzilla.gnome.org/show_bug.cgi?id=738633 ++ setenv("G_TLS_GNUTLS_PRIORITY", "NORMAL:%COMPAT:!VERS-SSL3.0", 0); ++ + return WebKit::NetworkProcessMain(argc, argv); + } + diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 34e1025..32b3f4f 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -7,7 +7,7 @@ Name: webkitgtk3 Version: 2.4.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -21,6 +21,8 @@ Patch1: webkitgtk-aarch64.patch Patch2: webkitgtk-2.4.1-cloop_fix.patch Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch +# https://bugs.webkit.org/show_bug.cgi?id=137859 +Patch5: webkitgtk-2.4.6-poodle.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -88,6 +90,7 @@ This package contains developer documentation for %{name}. %patch0 -p1 -b .nspluginwrapper %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix +%patch5 -p1 -b .poodle %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -197,6 +200,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Oct 21 2014 Tomas Popela - 2.4.6-2 +- Disable the SSLv3 to address the POODLE vulnerability + * Mon Sep 29 2014 Tomas Popela - 2.4.6-1 - Update to 2.4.6 From c9503b94e439d46532abb861813c8861762c6062 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 22 Oct 2014 14:50:23 +0200 Subject: [PATCH 11/20] Update to 2.4.7 --- sources | 2 +- webkitgtk-2.4.6-poodle.patch | 47 ------------------------------------ webkitgtk3.spec | 10 ++++---- 3 files changed, 6 insertions(+), 53 deletions(-) delete mode 100644 webkitgtk-2.4.6-poodle.patch diff --git a/sources b/sources index 6f48645..3390423 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -b0d019777754bb5779de8b9ad1dd6bfe webkitgtk-2.4.6.tar.xz +e1a10b4730f501980e3681db9b0e5d25 webkitgtk-2.4.7.tar.xz diff --git a/webkitgtk-2.4.6-poodle.patch b/webkitgtk-2.4.6-poodle.patch deleted file mode 100644 index 2404f6f..0000000 --- a/webkitgtk-2.4.6-poodle.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff -up webkitgtk-2.4.6/Source/WebKit2/gtk/MainGtk.cpp.poodle webkitgtk-2.4.6/Source/WebKit2/gtk/MainGtk.cpp ---- webkitgtk-2.4.6/Source/WebKit2/gtk/MainGtk.cpp.poodle 2014-10-21 10:08:32.851222903 +0200 -+++ webkitgtk-2.4.6/Source/WebKit2/gtk/MainGtk.cpp 2014-10-21 10:08:31.234199110 +0200 -@@ -26,7 +26,19 @@ - - #include "WebProcessMainGtk.h" - -+#include -+ - int main(int argc, char** argv) - { -+ // Disable SSLv3 very early because it is practically impossible to safely -+ // use setenv() when multiple threads are running, as another thread calling -+ // getenv() could cause a crash, and many functions use getenv() internally. -+ // This workaround will stop working if glib-networking switches away from -+ // GnuTLS or simply stops parsing this variable. We intentionally do not -+ // overwrite this priority string if it's already set by the user. -+ // Keep this in sync with NetworkMainUnix.cpp. -+ // https://bugzilla.gnome.org/show_bug.cgi?id=738633 -+ setenv("G_TLS_GNUTLS_PRIORITY", "NORMAL:%COMPAT:!VERS-SSL3.0", 0); -+ - return WebKit::WebProcessMainGtk(argc, argv); - } -diff -up webkitgtk-2.4.6/Source/WebKit2/unix/NetworkMainUnix.cpp.poodle webkitgtk-2.4.6/Source/WebKit2/unix/NetworkMainUnix.cpp ---- webkitgtk-2.4.6/Source/WebKit2/unix/NetworkMainUnix.cpp.poodle 2014-10-21 10:03:39.622908372 +0200 -+++ webkitgtk-2.4.6/Source/WebKit2/unix/NetworkMainUnix.cpp 2014-10-21 10:07:38.017416084 +0200 -@@ -30,8 +30,20 @@ - - #include "NetworkProcessMainUnix.h" - -+#include -+ - int main(int argc, char** argv) - { -+ // Disable SSLv3 very early because it is practically impossible to safely -+ // use setenv() when multiple threads are running, as another thread calling -+ // getenv() could cause a crash, and many functions use getenv() internally. -+ // This workaround will stop working if glib-networking switches away from -+ // GnuTLS or simply stops parsing this variable. We intentionally do not -+ // overwrite this priority string if it's already set by the user. -+ // Keep this in sync with MainGtk.cpp. -+ // https://bugzilla.gnome.org/show_bug.cgi?id=738633 -+ setenv("G_TLS_GNUTLS_PRIORITY", "NORMAL:%COMPAT:!VERS-SSL3.0", 0); -+ - return WebKit::NetworkProcessMain(argc, argv); - } - diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 32b3f4f..6ca7e5c 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -6,8 +6,8 @@ cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk3 -Version: 2.4.6 -Release: 2%{?dist} +Version: 2.4.7 +Release: 1%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -21,8 +21,6 @@ Patch1: webkitgtk-aarch64.patch Patch2: webkitgtk-2.4.1-cloop_fix.patch Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch -# https://bugs.webkit.org/show_bug.cgi?id=137859 -Patch5: webkitgtk-2.4.6-poodle.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -90,7 +88,6 @@ This package contains developer documentation for %{name}. %patch0 -p1 -b .nspluginwrapper %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix -%patch5 -p1 -b .poodle %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -200,6 +197,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed Oct 22 2014 Tomas Popela - 2.4.7-1 +- Update to 2.4.7 + * Tue Oct 21 2014 Tomas Popela - 2.4.6-2 - Disable the SSLv3 to address the POODLE vulnerability From 23ea348665aeb4c611ff4157e11d3073726ff32c Mon Sep 17 00:00:00 2001 From: Richard Hughes Date: Wed, 29 Oct 2014 17:07:42 +0000 Subject: [PATCH 12/20] trivial: Fix rebuild on non-Fedora --- webkitgtk3.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 6ca7e5c..5665a4d 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -1,3 +1,6 @@ +# Fix rebuild on non-Fedora +%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}} + ## NOTE: Lots of files in various subdirectories have the same name (such as ## "LICENSE") so this short macro allows us to distinguish them by using their ## directory names (from the source tree) as prefixes for the files. From dfc783b1d5c40ddcecc9df97d6acd060a14cf4c9 Mon Sep 17 00:00:00 2001 From: Richard Hughes Date: Tue, 4 Nov 2014 15:05:15 +0000 Subject: [PATCH 13/20] Fix non-Fedora build --- webkitgtk3.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 5665a4d..7867055 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -200,6 +200,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Nov 04 2014 Richard Hughes - 2.4.7-2 +- Fix non-Fedora build + * Wed Oct 22 2014 Tomas Popela - 2.4.7-1 - Update to 2.4.7 From 530f6c5ebc6af7ca48d9d94b4569efefefbd17e6 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Wed, 7 Jan 2015 13:36:02 +0100 Subject: [PATCH 14/20] Update to 2.4.8 --- sources | 2 +- webkitgtk3.spec | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sources b/sources index 3390423..a69c671 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -e1a10b4730f501980e3681db9b0e5d25 webkitgtk-2.4.7.tar.xz +bcdcef8e1ba28dbd5bb05f86c79f76b8 webkitgtk-2.4.8.tar.xz diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 7867055..69433ed 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -9,8 +9,8 @@ cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk3 -Version: 2.4.7 -Release: 2%{?dist} +Version: 2.4.8 +Release: 1%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -200,6 +200,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Wed Jan 07 2015 Tomas Popela - 2.4.8-1 +- Update to 2.4.8 + * Tue Nov 04 2014 Richard Hughes - 2.4.7-2 - Fix non-Fedora build From 1d0bd62191528bb38fc64e959cbda1c7a9635990 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 8 Jan 2015 11:41:27 +0100 Subject: [PATCH 15/20] Fix the build when the WebKit2 is disabled --- webkitgtk-2.4.8-plugin_none.patch | 27 +++++++++++++++++++++++++++ webkitgtk3.spec | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 webkitgtk-2.4.8-plugin_none.patch diff --git a/webkitgtk-2.4.8-plugin_none.patch b/webkitgtk-2.4.8-plugin_none.patch new file mode 100644 index 0000000..19ae387 --- /dev/null +++ b/webkitgtk-2.4.8-plugin_none.patch @@ -0,0 +1,27 @@ +diff -up webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am.plugin_none webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am +--- webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am.plugin_none 2015-01-08 11:08:03.261853581 +0100 ++++ webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am 2015-01-08 11:08:53.650619552 +0100 +@@ -6254,9 +6254,11 @@ endif # END USE_GLX + endif # END TARGET_X11 + + if TARGET_WAYLAND ++if ENABLE_WEBKIT2 + webcore_sources += \ + Source/WebCore/plugins/PluginPackageNone.cpp \ + Source/WebCore/plugins/PluginViewNone.cpp ++endif # END ENABLE_WEBKIT2 + endif # END TARGET_WAYLAND + + if TARGET_X11_OR_WAYLAND +@@ -6305,9 +6307,11 @@ webcoregtk_sources += \ + endif # END TARGET_WIN32 + + if TARGET_QUARTZ ++if ENABLE_WEBKIT2 + webcore_sources += \ + Source/WebCore/plugins/PluginPackageNone.cpp \ + Source/WebCore/plugins/PluginViewNone.cpp ++endif # END ENABLE_WEBKIT2 + platformgtk_sources += \ + Source/WebCore/platform/cairo/WidgetBackingStoreCairo.h \ + Source/WebCore/platform/cairo/WidgetBackingStoreCairo.cpp diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 69433ed..5eaae22 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -24,6 +24,7 @@ Patch1: webkitgtk-aarch64.patch Patch2: webkitgtk-2.4.1-cloop_fix.patch Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch +Patch5: webkitgtk-2.4.8-plugin_none.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -91,6 +92,7 @@ This package contains developer documentation for %{name}. %patch0 -p1 -b .nspluginwrapper %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix +%patch5 -p1 -b .plugin_none %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif From 2773e0b48224fdadb3936f658dfd7ef7b20e7c20 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 8 Jan 2015 12:16:50 +0100 Subject: [PATCH 16/20] Add missing link to bug --- webkitgtk3.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 5eaae22..9b71ce0 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -24,6 +24,7 @@ Patch1: webkitgtk-aarch64.patch Patch2: webkitgtk-2.4.1-cloop_fix.patch Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch +# https://bugs.webkit.org/show_bug.cgi?id=140241 Patch5: webkitgtk-2.4.8-plugin_none.patch BuildRequires: at-spi2-core-devel From 738dc9124658c9aca08c3e7ed584ef3ee5fb8fbe Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Tue, 10 Mar 2015 07:17:50 +0100 Subject: [PATCH 17/20] Backport fix for use-after-free when destroying frame --- webkitgtk-2.4.8-g_object_destroyed.patch | 23 +++++++++++++++++++++++ webkitgtk3.spec | 8 +++++++- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.8-g_object_destroyed.patch diff --git a/webkitgtk-2.4.8-g_object_destroyed.patch b/webkitgtk-2.4.8-g_object_destroyed.patch new file mode 100644 index 0000000..479f1de --- /dev/null +++ b/webkitgtk-2.4.8-g_object_destroyed.patch @@ -0,0 +1,23 @@ +diff --git a/Source/WebCore/bindings/gobject/GObjectEventListener.cpp b/Source/WebCore/bindings/gobject/GObjectEventListener.cpp +index 76cf279..9d1b881 100644 +--- a/Source/WebCore/bindings/gobject/GObjectEventListener.cpp ++++ b/Source/WebCore/bindings/gobject/GObjectEventListener.cpp +@@ -52,12 +52,13 @@ void GObjectEventListener::gobjectDestroyed() + { + ASSERT(m_coreTarget); + +- // We must set m_coreTarget to null, because removeEventListener +- // may call the destructor as a side effect and we must be in the +- // proper state to prevent g_object_weak_unref. +- EventTarget* target = m_coreTarget; ++ // Protect 'this' class in case the 'm_coreTarget' holds the last reference, ++ // which may cause, inside removeEventListener(), free of this object ++ // and later use-after-free with the m_handler = 0; assignment. ++ RefPtr protect(this); ++ ++ m_coreTarget->removeEventListener(m_domEventName.data(), this, m_capture); + m_coreTarget = 0; +- target->removeEventListener(m_domEventName.data(), this, m_capture); + m_handler = 0; + } + diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 9b71ce0..3e199b9 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.8 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -26,6 +26,8 @@ Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch # https://bugs.webkit.org/show_bug.cgi?id=140241 Patch5: webkitgtk-2.4.8-plugin_none.patch +#https://bugs.webkit.org/show_bug.cgi?id=127474 +Patch6: webkitgtk-2.4.8-g_object_destroyed.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -94,6 +96,7 @@ This package contains developer documentation for %{name}. %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix %patch5 -p1 -b .plugin_none +%patch6 -p1 -b .g_object_destroyed %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -203,6 +206,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Tue Mar 10 2015 Tomas Popela - 2.4.8-2 +- Backport fix for use-after-free when destroying frame + * Wed Jan 07 2015 Tomas Popela - 2.4.8-1 - Update to 2.4.8 From de640f14d626c461f0ff40e3da19c7ced9ee5b89 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Thu, 21 May 2015 09:18:11 +0200 Subject: [PATCH 18/20] Update to 2.4.9 --- sources | 2 +- webkitgtk-2.4.8-g_object_destroyed.patch | 23 ----------------- webkitgtk-2.4.8-plugin_none.patch | 27 ------------------- webkitgtk-aarch64.patch | 33 ++++++++++++------------ webkitgtk3.spec | 13 ++++------ 5 files changed, 22 insertions(+), 76 deletions(-) delete mode 100644 webkitgtk-2.4.8-g_object_destroyed.patch delete mode 100644 webkitgtk-2.4.8-plugin_none.patch diff --git a/sources b/sources index a69c671..1f8355d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -bcdcef8e1ba28dbd5bb05f86c79f76b8 webkitgtk-2.4.8.tar.xz +312fd29eb7f5970660c6a64b8bf8420e webkitgtk-2.4.9.tar.xz diff --git a/webkitgtk-2.4.8-g_object_destroyed.patch b/webkitgtk-2.4.8-g_object_destroyed.patch deleted file mode 100644 index 479f1de..0000000 --- a/webkitgtk-2.4.8-g_object_destroyed.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/Source/WebCore/bindings/gobject/GObjectEventListener.cpp b/Source/WebCore/bindings/gobject/GObjectEventListener.cpp -index 76cf279..9d1b881 100644 ---- a/Source/WebCore/bindings/gobject/GObjectEventListener.cpp -+++ b/Source/WebCore/bindings/gobject/GObjectEventListener.cpp -@@ -52,12 +52,13 @@ void GObjectEventListener::gobjectDestroyed() - { - ASSERT(m_coreTarget); - -- // We must set m_coreTarget to null, because removeEventListener -- // may call the destructor as a side effect and we must be in the -- // proper state to prevent g_object_weak_unref. -- EventTarget* target = m_coreTarget; -+ // Protect 'this' class in case the 'm_coreTarget' holds the last reference, -+ // which may cause, inside removeEventListener(), free of this object -+ // and later use-after-free with the m_handler = 0; assignment. -+ RefPtr protect(this); -+ -+ m_coreTarget->removeEventListener(m_domEventName.data(), this, m_capture); - m_coreTarget = 0; -- target->removeEventListener(m_domEventName.data(), this, m_capture); - m_handler = 0; - } - diff --git a/webkitgtk-2.4.8-plugin_none.patch b/webkitgtk-2.4.8-plugin_none.patch deleted file mode 100644 index 19ae387..0000000 --- a/webkitgtk-2.4.8-plugin_none.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -up webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am.plugin_none webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am ---- webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am.plugin_none 2015-01-08 11:08:03.261853581 +0100 -+++ webkitgtk-2.4.8/Source/WebCore/GNUmakefile.list.am 2015-01-08 11:08:53.650619552 +0100 -@@ -6254,9 +6254,11 @@ endif # END USE_GLX - endif # END TARGET_X11 - - if TARGET_WAYLAND -+if ENABLE_WEBKIT2 - webcore_sources += \ - Source/WebCore/plugins/PluginPackageNone.cpp \ - Source/WebCore/plugins/PluginViewNone.cpp -+endif # END ENABLE_WEBKIT2 - endif # END TARGET_WAYLAND - - if TARGET_X11_OR_WAYLAND -@@ -6305,9 +6307,11 @@ webcoregtk_sources += \ - endif # END TARGET_WIN32 - - if TARGET_QUARTZ -+if ENABLE_WEBKIT2 - webcore_sources += \ - Source/WebCore/plugins/PluginPackageNone.cpp \ - Source/WebCore/plugins/PluginViewNone.cpp -+endif # END ENABLE_WEBKIT2 - platformgtk_sources += \ - Source/WebCore/platform/cairo/WidgetBackingStoreCairo.h \ - Source/WebCore/platform/cairo/WidgetBackingStoreCairo.cpp diff --git a/webkitgtk-aarch64.patch b/webkitgtk-aarch64.patch index 7272bc1..6a82264 100644 --- a/webkitgtk-aarch64.patch +++ b/webkitgtk-aarch64.patch @@ -1,19 +1,19 @@ -diff -up webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h.aarch64 webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h ---- webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h.aarch64 2014-09-02 11:39:15.782812173 +0200 -+++ webkitgtk-2.4.5/Source/WTF/wtf/dtoa/utils.h 2014-09-02 11:41:23.022637099 +0200 +diff -up webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h.aarch64 webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h +--- webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h.aarch64 2015-05-20 11:03:24.000000000 +0200 ++++ webkitgtk-2.4.9/Source/WTF/wtf/dtoa/utils.h 2015-05-20 13:45:35.629023925 +0200 @@ -49,7 +49,7 @@ defined(__ARMEL__) || \ defined(_MIPS_ARCH_MIPS32R2) #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 --#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) -+#elif CPU(MIPS) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(AARCH64) || CPU(HPPA) +-#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) ++#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || OS(WINCE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(AARCH64) || CPU(HPPA) #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 #elif defined(_M_IX86) || defined(__i386__) #if defined(_WIN32) -diff -up webkitgtk-2.4.5/Source/WTF/wtf/Platform.h.aarch64 webkitgtk-2.4.5/Source/WTF/wtf/Platform.h ---- webkitgtk-2.4.5/Source/WTF/wtf/Platform.h.aarch64 2014-08-25 14:50:32.000000000 +0200 -+++ webkitgtk-2.4.5/Source/WTF/wtf/Platform.h 2014-09-02 11:40:40.925033307 +0200 -@@ -331,6 +331,14 @@ +diff -up webkitgtk-2.4.9/Source/WTF/wtf/Platform.h.aarch64 webkitgtk-2.4.9/Source/WTF/wtf/Platform.h +--- webkitgtk-2.4.9/Source/WTF/wtf/Platform.h.aarch64 2015-05-20 11:03:24.000000000 +0200 ++++ webkitgtk-2.4.9/Source/WTF/wtf/Platform.h 2015-05-20 13:47:34.439861401 +0200 +@@ -334,6 +334,14 @@ #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1 #endif @@ -28,13 +28,12 @@ diff -up webkitgtk-2.4.5/Source/WTF/wtf/Platform.h.aarch64 webkitgtk-2.4.5/Sourc /* ==== OS() - underlying operating system; only to be used for mandated low-level services like virtual memory, not to choose a GUI toolkit ==== */ -@@ -656,7 +664,8 @@ - || CPU(ARM64) \ +@@ -654,7 +662,7 @@ + #if (CPU(X86_64) && (OS(UNIX) || OS(WINDOWS))) \ + || (CPU(IA64) && !CPU(IA64_32)) \ + || CPU(ALPHA) \ +- || CPU(ARM64) \ ++ || CPU(AARCH64) \ || CPU(S390X) \ + || CPU(MIPS64) \ || CPU(PPC64) \ -- || CPU(PPC64LE) -+ || CPU(PPC64LE) \ -+ || CPU(AARCH64) - #define WTF_USE_JSVALUE64 1 - #else - #define WTF_USE_JSVALUE32_64 1 diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 3e199b9..76421eb 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -9,8 +9,8 @@ cp -p %1 %{buildroot}%{_pkgdocdir}/$(echo '%1' | sed -e 's!/!.!g') Name: webkitgtk3 -Version: 2.4.8 -Release: 2%{?dist} +Version: 2.4.9 +Release: 1%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -24,10 +24,6 @@ Patch1: webkitgtk-aarch64.patch Patch2: webkitgtk-2.4.1-cloop_fix.patch Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch -# https://bugs.webkit.org/show_bug.cgi?id=140241 -Patch5: webkitgtk-2.4.8-plugin_none.patch -#https://bugs.webkit.org/show_bug.cgi?id=127474 -Patch6: webkitgtk-2.4.8-g_object_destroyed.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -95,8 +91,6 @@ This package contains developer documentation for %{name}. %patch0 -p1 -b .nspluginwrapper %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix -%patch5 -p1 -b .plugin_none -%patch6 -p1 -b .g_object_destroyed %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -206,6 +200,9 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Thu May 21 2015 Tomas Popela - 2.4.9-1 +- Update to 2.4.9 + * Tue Mar 10 2015 Tomas Popela - 2.4.8-2 - Backport fix for use-after-free when destroying frame From e12547065908f29ca836e573e9d6d4439ced7184 Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 25 Sep 2015 07:46:44 +0200 Subject: [PATCH 19/20] - rhbz#1189303 - [abrt] midori: WebCore::SQLiteStatement::prepare(): midori killed by SIGSEGV Initialize string in SQLiteStatement before using it --- webkitgtk-2.4.9-sql_initialize_string.patch | 12 ++++++++++++ webkitgtk3.spec | 8 +++++++- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 webkitgtk-2.4.9-sql_initialize_string.patch diff --git a/webkitgtk-2.4.9-sql_initialize_string.patch b/webkitgtk-2.4.9-sql_initialize_string.patch new file mode 100644 index 0000000..a34ef14 --- /dev/null +++ b/webkitgtk-2.4.9-sql_initialize_string.patch @@ -0,0 +1,12 @@ +diff -up webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp.sql_initialize_string webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp +--- webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp.sql_initialize_string 2015-09-14 09:25:43.004200172 +0200 ++++ webkitgtk-2.4.9/Source/WebCore/platform/sql/SQLiteStatement.cpp 2015-09-14 09:25:57.852082368 +0200 +@@ -71,7 +71,7 @@ int SQLiteStatement::prepare() + // this lets SQLite avoid an extra string copy. + size_t lengthIncludingNullCharacter = query.length() + 1; + +- const char* tail; ++ const char* tail = nullptr; + int error = sqlite3_prepare_v2(m_database.sqlite3Handle(), query.data(), lengthIncludingNullCharacter, &m_statement, &tail); + + if (error != SQLITE_OK) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index 76421eb..adcee23 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -10,7 +10,7 @@ Name: webkitgtk3 Version: 2.4.9 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GTK+ Web content engine library Group: Development/Libraries @@ -24,6 +24,7 @@ Patch1: webkitgtk-aarch64.patch Patch2: webkitgtk-2.4.1-cloop_fix.patch Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch +Patch5: webkitgtk-2.4.9-sql_initialize_string.patch BuildRequires: at-spi2-core-devel BuildRequires: bison @@ -91,6 +92,7 @@ This package contains developer documentation for %{name}. %patch0 -p1 -b .nspluginwrapper %patch1 -p1 -b .aarch64 %patch2 -p1 -b .cloop_fix +%patch5 -p1 -b .sql_initialize_string %ifarch ppc s390 %patch3 -p1 -b .cloop_fix_32 %endif @@ -200,6 +202,10 @@ find $RPM_BUILD_ROOT%{_libdir} -name "*.la" -delete %{_datadir}/gtk-doc/html/webkitdomgtk %changelog +* Fri Sep 25 2015 Tomas Popela - 2.4.9-2 +- rhbz#1189303 - [abrt] midori: WebCore::SQLiteStatement::prepare(): midori killed by SIGSEGV + Initialize string in SQLiteStatement before using it + * Thu May 21 2015 Tomas Popela - 2.4.9-1 - Update to 2.4.9 From c232495c4032bf93beb149785e8b7ed28fae381d Mon Sep 17 00:00:00 2001 From: Tomas Popela Date: Fri, 25 Sep 2015 07:50:36 +0200 Subject: [PATCH 20/20] Add missing link to the patch source --- webkitgtk3.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/webkitgtk3.spec b/webkitgtk3.spec index adcee23..dc27153 100644 --- a/webkitgtk3.spec +++ b/webkitgtk3.spec @@ -24,6 +24,7 @@ Patch1: webkitgtk-aarch64.patch Patch2: webkitgtk-2.4.1-cloop_fix.patch Patch3: webkitgtk-2.4.5-cloop_fix_32.patch Patch4: webkitgtk-2.4.1-ppc64_align.patch +# http://trac.webkit.org/changeset/169665 Patch5: webkitgtk-2.4.9-sql_initialize_string.patch BuildRequires: at-spi2-core-devel