diff --git a/webkit2gtk3-fix-i586-build.patch b/webkit2gtk3-fix-i586-build.patch new file mode 100644 index 0000000..d7f4f16 --- /dev/null +++ b/webkit2gtk3-fix-i586-build.patch @@ -0,0 +1,89 @@ +Index: /trunk/CMakeLists.txt +=================================================================== +--- /trunk/CMakeLists.txt (revision 244137) ++++ /trunk/CMakeLists.txt (revision 244138) +@@ -115,14 +115,4 @@ + endif () + +-#--------------------------- +-# Make sure SSE2 is present. +-#--------------------------- +-if (WTF_CPU_X86) +- include(FindSSE2) +- if (NOT SSE2_SUPPORT_FOUND) +- message(FATAL_ERROR "SSE2 support is required to compile WebKit") +- endif () +-endif () +- + # ----------------------------------------------------------------------------- + # Determine the operating system +Index: /trunk/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.cpp +=================================================================== +--- /trunk/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.cpp (revision 244137) ++++ /trunk/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.cpp (revision 244138) +@@ -168,4 +168,9 @@ + static_assert(sizeof(Probe::State) == PROBE_SIZE, "Probe::State::size's matches ctiMasmProbeTrampoline"); + static_assert((PROBE_EXECUTOR_OFFSET + PTR_SIZE) <= (PROBE_SIZE + OUT_SIZE), "Must have room after ProbeContext to stash the probe handler"); ++ ++#if CPU(X86) ++// SSE2 is a hard requirement on x86. ++static_assert(isSSE2Present(), "SSE2 support is required in JavaScriptCore"); ++#endif + + #undef PROBE_OFFSETOF +@@ -788,4 +793,5 @@ + { + CPUID cpuid = getCPUID(0x1); ++ s_sse2CheckState = (cpuid[3] & (1 << 26)) ? CPUIDCheckState::Set : CPUIDCheckState::Clear; + s_sse4_1CheckState = (cpuid[2] & (1 << 19)) ? CPUIDCheckState::Set : CPUIDCheckState::Clear; + s_sse4_2CheckState = (cpuid[2] & (1 << 20)) ? CPUIDCheckState::Set : CPUIDCheckState::Clear; +@@ -804,4 +810,5 @@ + } + ++MacroAssemblerX86Common::CPUIDCheckState MacroAssemblerX86Common::s_sse2CheckState = CPUIDCheckState::NotChecked; + MacroAssemblerX86Common::CPUIDCheckState MacroAssemblerX86Common::s_sse4_1CheckState = CPUIDCheckState::NotChecked; + MacroAssemblerX86Common::CPUIDCheckState MacroAssemblerX86Common::s_sse4_2CheckState = CPUIDCheckState::NotChecked; +Index: /trunk/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h +=================================================================== +--- /trunk/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h (revision 244137) ++++ /trunk/Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h (revision 244138) +@@ -4198,4 +4198,33 @@ + #endif + ++#if CPU(X86) ++#if OS(MAC_OS_X) ++ ++ // All X86 Macs are guaranteed to support at least SSE2, ++ static bool isSSE2Present() ++ { ++ return true; ++ } ++ ++#else // OS(MAC_OS_X) ++ static bool isSSE2Present() ++ { ++ if (s_sse2CheckState == CPUIDCheckState::NotChecked) ++ collectCPUFeatures(); ++ return s_sse2CheckState == CPUIDCheckState::Set; ++ } ++ ++#endif // OS(MAC_OS_X) ++#elif !defined(NDEBUG) // CPU(X86) ++ ++ // On x86-64 we should never be checking for SSE2 in a non-debug build, ++ // but non debug add this method to keep the asserts above happy. ++ static bool isSSE2Present() ++ { ++ return true; ++ } ++ ++#endif ++ + using CPUID = std::array; + static CPUID getCPUID(unsigned level); +@@ -4203,4 +4232,5 @@ + JS_EXPORT_PRIVATE static void collectCPUFeatures(); + ++ JS_EXPORT_PRIVATE static CPUIDCheckState s_sse2CheckState; + JS_EXPORT_PRIVATE static CPUIDCheckState s_sse4_1CheckState; + JS_EXPORT_PRIVATE static CPUIDCheckState s_sse4_2CheckState; diff --git a/webkit2gtk3.changes b/webkit2gtk3.changes index 2c50036..a914f16 100644 --- a/webkit2gtk3.changes +++ b/webkit2gtk3.changes @@ -1,3 +1,38 @@ +------------------------------------------------------------------- +Wed Apr 24 17:45:53 UTC 2019 - Martin Liška + +- Disable LTO (boo#1133291). + +------------------------------------------------------------------- +Mon Apr 15 11:06:10 UTC 2019 - Dominique Leuenberger + +- Add webkit2gtk3-fix-i586-build.patch: Fix build on i586. + +------------------------------------------------------------------- +Wed Apr 10 21:50:50 UTC 2019 - Bjørn Lie + +- Update to version 2.24.1 (boo#1132256): + + Do not allow changes in active URI before provisional load + starts for non-API requests. + + Stop the threaded compositor when the page is not visible or + layer tree state is frozen. + + Use WebKit HTTP source element again for adaptive streaming + fragments downloading. + + Properly handle empty resources in + webkit_web_resource_get_data(). + + Add quirk to ensure outlook.live.com uses the modern UI. + + Fix methods returing GObject or boxed types in JavaScriptCore + GLib API. + + Ensure callback data is passed to functions and constructors + with no parameters in JavaScriptCore GLib API. + + Fix rendering of complex text when the font uses x,y origins. + + Fix sound loop with Google Hangouts and WhatsApp notifications. + + Fix the build with GStreamer 1.12.5 and GST GL enabled. + + Detect SSE2 at compile time. + + Fix several crashes and rendering issues. + + Security fixes: CVE-2019-6251, CVE-2019-11070. +- Drop webkitgtk-gstreamer-gl-build-fix.patch: Fixed upstream. + ------------------------------------------------------------------- Tue Mar 26 22:39:18 UTC 2019 - mgorse@suse.com @@ -20,7 +55,9 @@ Wed Mar 13 13:40:11 UTC 2019 - Bjørn Lie + Support for JPEG2000 images. + Script dialogs are now modal to the current web view only. + New API to convert URI to format for display. - + Security fixes: CVE-2019-8375 (boo#1126768). + + Security fixes: CVE-2019-8375 (boo#1126768), CVE-2019-8506, + CVE-2019-8524, CVE-2019-8535, CVE-2019-8536, CVE-2019-8544, + CVE-2019-8551, CVE-2019-8558, CVE-2019-8559, CVE-2019-8563. ------------------------------------------------------------------- Wed Mar 6 16:25:48 UTC 2019 - Bjørn Lie @@ -116,6 +153,7 @@ Sat Mar 2 16:34:27 UTC 2019 - Bjørn Lie + Fix rendering of glyphs in Hebrew (and possibly other languages) when Unicode NFC normalization is used. + Fix several crashes and race conditions. + + Security fixes: CVE-2019-8518, CVE-2019-8523. ------------------------------------------------------------------- Wed Feb 13 17:16:52 UTC 2019 - mgorse@suse.com @@ -137,7 +175,8 @@ Sat Feb 9 15:44:38 UTC 2019 - bjorn.lie@gmail.com + Fix several crashes, race conditions, and rendering issues. - CVE identifiers fixed: CVE-2019-6212, CVE-2019-6215, CVE-2019-6216, CVE-2019-6217, CVE-2019-6226, CVE-2019-6227, - CVE-2019-6229, CVE-2019-6233, CVE-2019-6234. + CVE-2019-6229, CVE-2019-6233, CVE-2019-6234, CVE-2019-6201, + CVE-2019-7285, CVE-2019-7292, CVE-2019-8503, CVE-2019-8515. ------------------------------------------------------------------- Wed Dec 26 19:21:01 UTC 2018 - bjorn.lie@gmail.com diff --git a/webkit2gtk3.spec b/webkit2gtk3.spec index 945afcf..6c98cb9 100644 --- a/webkit2gtk3.spec +++ b/webkit2gtk3.spec @@ -32,7 +32,7 @@ %define _gold_linker 0 %endif %else -%ifarch ppc s390 +%ifarch ppc s390 %define _gold_linker 0 %endif %endif @@ -42,7 +42,7 @@ %bcond_with python3 %endif Name: webkit2gtk3 -Version: 2.24.0 +Version: 2.24.1 Release: 0 Summary: Library for rendering web content, GTK+ Port License: LGPL-2.0-or-later AND BSD-3-Clause @@ -52,11 +52,10 @@ Source0: https://webkitgtk.org/releases/%{_name}-%{version}.tar.xz Source1: https://webkitgtk.org/releases/%{_name}-%{version}.tar.xz.asc Source98: baselibs.conf Source99: webkit2gtk3.keyring +# PATCH-FIX-UPSTREAM webkit2gtk3-fix-i586-build.patch dimstar@opensuse.org -- Fix build on i586, taken from upstream https://trac.webkit.org/changeset/244138/webkit +Patch0: webkit2gtk3-fix-i586-build.patch # PATCH-FIX-UPSTREAM webkit2gtk3-boo1088932-a11y-state-set.patch boo#1088932 webkit#184366 mgorse@suse.com -- fix crash when atk_object_ref_state_set is called on an AtkObject that's being destroyed Patch1: webkit2gtk3-boo1088932-a11y-state-set.patch -# PATCH-FIX-UPSTREAM webkitgtk-gstreamer-gl-build-fix.patch webkit#196178 mgorse@suse.com -- fix build on SLE/Leap 15. -Patch2: webkitgtk-gstreamer-gl-build-fix.patch - BuildRequires: Mesa-libEGL-devel BuildRequires: Mesa-libGL-devel BuildRequires: Mesa-libGLESv1_CM-devel @@ -66,21 +65,12 @@ BuildRequires: bison >= 2.3 #BuildRequires: bubblewrap BuildRequires: cmake BuildRequires: enchant-devel -%if 0%{?suse_version} == 1315 -BuildRequires: gcc7-c++ -%else -BuildRequires: gcc-c++ >= 4.9 -%endif BuildRequires: gobject-introspection-devel BuildRequires: gperf >= 3.0.1 BuildRequires: hyphen-devel BuildRequires: libicu-devel BuildRequires: libjpeg-devel BuildRequires: ninja -%if 0%{?suse_version} >= 1500 -BuildRequires: openjpeg2 -BuildRequires: openjpeg2-devel -%endif BuildRequires: perl >= 5.10.0 BuildRequires: pkgconfig BuildRequires: ruby >= 1.8.7 @@ -114,15 +104,24 @@ BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(libsoup-2.4) >= 2.61.90 BuildRequires: pkgconfig(libwebp) -%if 0%{?suse_version} > 1500 -BuildRequires: pkgconfig(libwoff2dec) -%endif BuildRequires: pkgconfig(libxml-2.0) >= 2.8.0 BuildRequires: pkgconfig(libxslt) >= 1.1.7 BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(upower-glib) BuildRequires: pkgconfig(xt) BuildRequires: pkgconfig(zlib) +%if 0%{?suse_version} == 1315 +BuildRequires: gcc7-c++ +%else +BuildRequires: gcc-c++ >= 4.9 +%endif +%if 0%{?suse_version} >= 1500 +BuildRequires: openjpeg2 +BuildRequires: openjpeg2-devel +%endif +%if 0%{?suse_version} > 1500 +BuildRequires: pkgconfig(libwoff2dec) +%endif %if %{with python3} BuildRequires: python3 %else @@ -292,10 +291,11 @@ A small test browswer from webkit, useful for testing features. %prep %setup -q -n webkitgtk-%{version} +%patch0 -p2 %patch1 -p1 -%patch2 -p1 %build +%define _lto_cflags %{nil} # Here we must muzzle our dog so it doesn't eat all the memory max_link_jobs="%{?jobs:%{jobs}}" max_compile_jobs="%{?jobs:%{jobs}}" diff --git a/webkitgtk-2.24.0.tar.xz b/webkitgtk-2.24.0.tar.xz deleted file mode 100644 index 8220a9e..0000000 --- a/webkitgtk-2.24.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2e4ad1503fe482ceb5a83cf70ac9cd42f37eb718555a4d6844fe4c59a9214407 -size 17894000 diff --git a/webkitgtk-2.24.0.tar.xz.asc b/webkitgtk-2.24.0.tar.xz.asc deleted file mode 100644 index a06be1a..0000000 --- a/webkitgtk-2.24.0.tar.xz.asc +++ /dev/null @@ -1,6 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iF0EABEDAB0WIQTX/PYc+aLeqzHYG9Pz0yLQ7EWCwwUCXIjSEgAKCRDz0yLQ7EWC -w3XeAJ4ihDVCxdmR3bu1ZnJA2+fmSo7rhgCg0jQJCPD1XIrb+zuqPNxWT/wDQwg= -=MBZW ------END PGP SIGNATURE----- diff --git a/webkitgtk-2.24.1.tar.xz b/webkitgtk-2.24.1.tar.xz new file mode 100644 index 0000000..c40795b --- /dev/null +++ b/webkitgtk-2.24.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53cb8eaad2ca4caaae663d68331b83fd27d5bd5f6c5388d6ea3c455e338f396d +size 17897488 diff --git a/webkitgtk-2.24.1.tar.xz.asc b/webkitgtk-2.24.1.tar.xz.asc new file mode 100644 index 0000000..43dcd12 --- /dev/null +++ b/webkitgtk-2.24.1.tar.xz.asc @@ -0,0 +1,6 @@ +-----BEGIN PGP SIGNATURE----- + +iF0EABEDAB0WIQTX/PYc+aLeqzHYG9Pz0yLQ7EWCwwUCXKxbDQAKCRDz0yLQ7EWC +w6WXAKDUFV+QwdCM6qtEuK8VMXMwZW1f9gCeMXyhkxnKEqoAZjyhfXZTJi+YE/s= +=Qcvg +-----END PGP SIGNATURE----- diff --git a/webkitgtk-gstreamer-gl-build-fix.patch b/webkitgtk-gstreamer-gl-build-fix.patch deleted file mode 100644 index 8ef2de4..0000000 --- a/webkitgtk-gstreamer-gl-build-fix.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -urp webkitgtk-2.24.0.orig/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp webkitgtk-2.24.0/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp ---- webkitgtk-2.24.0.orig/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2019-03-13 04:21:39.000000000 -0500 -+++ webkitgtk-2.24.0/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2019-03-26 17:38:02.621708276 -0500 -@@ -29,7 +29,6 @@ - - #include "GStreamerCommon.h" - #include "GraphicsContext.h" --#include "GraphicsContext3D.h" - #include "ImageGStreamer.h" - #include "ImageOrientation.h" - #include "IntRect.h" -@@ -117,6 +116,7 @@ - #if USE(TEXTURE_MAPPER_GL) - #include "BitmapTextureGL.h" - #include "BitmapTexturePool.h" -+#include "GraphicsContext3D.h" - #include "TextureMapperContextAttributes.h" - #include "TextureMapperGL.h" - #include "TextureMapperPlatformLayerBuffer.h" -@@ -191,6 +191,9 @@ public: - if (m_isMapped) - m_textureID = *reinterpret_cast(m_videoFrame.data[0]); - } else -+#else -+ UNUSED_PARAM(gstGLEnabled); -+ UNUSED_PARAM(flags); - #endif // USE(GSTREAMER_GL) - - {