Hello community, here is the log from the commit of package MozillaFirefox for openSUSE:Factory checked in at 2020-07-06 16:20:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/MozillaFirefox (Old) and /work/SRC/openSUSE:Factory/.MozillaFirefox.new.3060 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "MozillaFirefox" Mon Jul 6 16:20:26 2020 rev:314 rq:818643 version:78.0.1 Changes: -------- --- /work/SRC/openSUSE:Factory/MozillaFirefox/MozillaFirefox.changes 2020-06-05 20:05:35.768916295 +0200 +++ /work/SRC/openSUSE:Factory/.MozillaFirefox.new.3060/MozillaFirefox.changes 2020-07-06 16:24:17.826242597 +0200 @@ -1,0 +2,72 @@ +Wed Jul 1 07:15:02 UTC 2020 - Wolfgang Rosenauer <[email protected]> + +- Mozilla Firefox 78.0.1 + * Fixed an issue which could cause installed search engines to not + be visible when upgrading from a previous release. +- enable MOZ_USE_XINPUT2 for TW (boo#1173320) + +------------------------------------------------------------------- +Sun Jun 28 07:17:13 UTC 2020 - Wolfgang Rosenauer <[email protected]> + +- Mozilla Firefox 78.0 + * startup notifications now using Gtk instead of libnotify + * PDF downloads now show an option to open the PDF directly in Firefox + * Protections Dashboard (about:protections) + * WebRTC not interrupted by screensaver anymore + * disabled TLS 1.0 and 1.1 by default + MFSA 2020-24 (bsc#1173576) + * CVE-2020-12415 (bmo#1586630) + AppCache manifest poisoning due to url encoded character processing + * CVE-2020-12416 (bmo#1639734) + Use-after-free in WebRTC VideoBroadcaster + * CVE-2020-12417 (bmo#1640737) + Memory corruption due to missing sign-extension for ValueTags + on ARM64 + * CVE-2020-12418 (bmo#1641303) + Information disclosure due to manipulated URL object + * CVE-2020-12419 (bmo#1643874) + Use-after-free in nsGlobalWindowInner + * CVE-2020-12420 (bmo#1643437) + Use-After-Free when trying to connect to a STUN server + * CVE-2020-12402 (bmo#1631597) + RSA Key Generation vulnerable to side-channel attack + * CVE-2020-12421 (bmo#1308251) + Add-On updates did not respect the same certificate trust + rules as software updates + * CVE-2020-12422 (bmo#1450353) + Integer overflow in nsJPEGEncoder::emptyOutputBuffer + * CVE-2020-12423 (bmo#1642400) + DLL Hijacking due to searching %PATH% for a library + * CVE-2020-12424 (bmo#1562600) + WebRTC permission prompt could have been bypassed by a + compromised content process + * CVE-2020-12425 (bmo#1634738) + Out of bound read in Date.parse() + * CVE-2020-12426 (bmo#1608068, bmo#1609951, bmo#1631187, bmo#1637682) + Memory safety bugs fixed in Firefox 78 +- requires + * NSS >= 3.53.1 + * nodejs >= 10.21 + * Gtk+3 >= 3.14 +- removed obsolete patches + * mozilla-s390-bigendian.patch + * mozilla-bmo1634646.patch +- Add mozilla-pipewire-0-3.patch for openSUSE >= 15.2 to build + WebRTC with pipewire support to enable screen sharing under + Wayland; also add BuildRequires: pkgconfig(libpipewire-0.3) + appropriately (boo#1172903). +- adding SLE12 compatibility in spec file +- add patches for s390x + * mozilla-bmo1602730.patch (bmo#1602730) + * mozilla-bmo1626236.patch (bmo#1626236) + * mozilla-bmo998749.patch (bmo#998749) + * mozilla-s390x-skia-gradient.patch +- update create-tar.sh +- Use same _constraints for ppc64 (BE) as ppc64le to avoid oom build failure + +------------------------------------------------------------------- +Wed Jun 10 07:17:15 UTC 2020 - Guillaume GARDET <[email protected]> + +- Exclude armv6, since it is unbuildable since about 3 years + +------------------------------------------------------------------- Old: ---- firefox-77.0.1.source.tar.xz firefox-77.0.1.source.tar.xz.asc l10n-77.0.1.tar.xz mozilla-bmo1634646.patch mozilla-s390-bigendian.patch New: ---- firefox-78.0.1.source.tar.xz firefox-78.0.1.source.tar.xz.asc l10n-78.0.1.tar.xz mozilla-bmo1602730.patch mozilla-bmo1626236.patch mozilla-bmo998749.patch mozilla-pipewire-0-3.patch mozilla-s390x-skia-gradient.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ MozillaFirefox.spec ++++++ --- /var/tmp/diff_new_pack.n5KVZn/_old 2020-07-06 16:25:34.702478824 +0200 +++ /var/tmp/diff_new_pack.n5KVZn/_new 2020-07-06 16:25:34.706478835 +0200 @@ -18,9 +18,16 @@ # changed with every update -%define major 77 +# orig_version vs. mainver: To have beta-builds +# FF70beta3 would be released as FF69.99 +# orig_version would be the upstream tar ball +# orig_version 70.0 +# orig_suffix b3 +# major 69 +# mainver %major.99 +%define major 78 %define mainver %major.0.1 -%define orig_version 77.0.1 +%define orig_version 78.0.1 %define orig_suffix %{nil} %define update_channel release %define branding 1 @@ -61,6 +68,12 @@ %else %define crashreporter 0 %endif +%if 0%{?sle_version} > 150100 +# pipewire is too old on Leap <15.1 +%define with_pipewire0_3 1 +%else +%define with_pipewire0_3 0 +%endif Name: %{pkgname} BuildRequires: Mesa-devel @@ -71,7 +84,7 @@ BuildRequires: fdupes BuildRequires: memory-constraints %if 0%{?suse_version} <= 1320 -BuildRequires: gcc7-c++ +BuildRequires: gcc9-c++ %else BuildRequires: gcc-c++ %endif @@ -80,19 +93,22 @@ BuildRequires: libcurl-devel BuildRequires: libidl-devel BuildRequires: libiw-devel -BuildRequires: libnotify-devel BuildRequires: libproxy-devel BuildRequires: makeinfo BuildRequires: mozilla-nspr-devel >= 4.25 -BuildRequires: mozilla-nss-devel >= 3.52.1 +BuildRequires: mozilla-nss-devel >= 3.53.1 BuildRequires: nasm >= 2.14 -BuildRequires: nodejs10 >= 10.19.0 +BuildRequires: nodejs10 >= 10.21.0 BuildRequires: python-devel +%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000 +BuildRequires: python-libxml2 +BuildRequires: python36 +%else BuildRequires: python2-xml BuildRequires: python3 >= 3.5 +%endif BuildRequires: rust >= 1.41 BuildRequires: rust-cbindgen >= 0.14.1 -BuildRequires: startup-notification-devel BuildRequires: unzip BuildRequires: update-desktop-files BuildRequires: xorg-x11-libXt-devel @@ -104,16 +120,23 @@ %if 0%{?suse_version} < 1550 BuildRequires: pkgconfig(gconf-2.0) >= 1.2.1 %endif +%if (0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000) +BuildRequires: clang6-devel +%else BuildRequires: clang-devel >= 5 +%endif BuildRequires: pkgconfig(gdk-x11-2.0) BuildRequires: pkgconfig(glib-2.0) >= 2.22 BuildRequires: pkgconfig(gobject-2.0) BuildRequires: pkgconfig(gtk+-2.0) >= 2.18.0 -BuildRequires: pkgconfig(gtk+-3.0) >= 3.4.0 +BuildRequires: pkgconfig(gtk+-3.0) >= 3.14.0 BuildRequires: pkgconfig(gtk+-unix-print-2.0) BuildRequires: pkgconfig(gtk+-unix-print-3.0) BuildRequires: pkgconfig(libffi) BuildRequires: pkgconfig(libpulse) +%if %{with_pipewire0_3} +BuildRequires: pkgconfig(libpipewire-0.3) +%endif # libavcodec is required for H.264 support but the # openSUSE version is currently not able to play H.264 # therefore the Packman version is required @@ -148,7 +171,7 @@ Source11: firefox.1 Source12: mozilla-get-app-id Source13: spellcheck.js -Source14: https://github.com/openSUSE/firefox-scripts/raw/8a54002/create-tar.sh +Source14: https://github.com/openSUSE/firefox-scripts/raw/5e54f4a/create-tar.sh Source15: firefox-appdata.xml Source16: %{name}.changes # Set up API keys, see http://www.chromium.org/developers/how-tos/api-keys @@ -168,7 +191,6 @@ Patch7: mozilla-fix-aarch64-libopus.patch Patch8: mozilla-disable-wasm-emulate-arm-unaligned-fp-access.patch Patch9: mozilla-s390-context.patch -Patch10: mozilla-s390-bigendian.patch Patch11: mozilla-reduce-rust-debuginfo.patch Patch12: mozilla-ppc-altivec_static_inline.patch Patch13: mozilla-bmo1005535.patch @@ -181,7 +203,11 @@ Patch20: mozilla-fix-top-level-asm.patch Patch21: mozilla-bmo1504834-part4.patch Patch22: mozilla-bmo849632.patch -Patch23: mozilla-bmo1634646.patch +Patch23: mozilla-pipewire-0-3.patch +Patch24: mozilla-bmo1602730.patch +Patch25: mozilla-bmo998749.patch +Patch26: mozilla-bmo1626236.patch +Patch27: mozilla-s390x-skia-gradient.patch # Firefox/browser Patch101: firefox-kde.patch Patch102: firefox-branded-icons.patch @@ -203,7 +229,7 @@ %if 0%{?suse_version} < 1220 Obsoletes: libproxy1-pacrunner-mozjs <= 0.4.7 %endif -##BuildArch: i686 x86_64 aarch64 ppc64le +ExcludeArch: armv6l armv6hl %description Mozilla Firefox is a standalone web browser, designed for standards @@ -228,6 +254,8 @@ Summary: Common translations for %{appname} Group: System/Localization Provides: locale(%{name}:ar;ca;cs;da;de;el;en_GB;es_AR;es_CL;es_ES;fi;fr;hu;it;ja;ko;nb_NO;nl;pl;pt_BR;pt_PT;ru;sv_SE;zh_CN;zh_TW) +# This is there for updates from Firefox before the translations-package was split up into 2 packages +Provides: %{name}-translations Requires: %{name} = %{version} Obsoletes: %{name}-translations < %{version}-%{release} @@ -302,9 +330,6 @@ %patch7 -p1 %patch8 -p1 %patch9 -p1 -%ifarch s390x ppc64 -%patch10 -p1 -%endif %patch11 -p1 %patch12 -p1 %patch13 -p1 @@ -317,7 +342,13 @@ %patch20 -p1 %patch21 -p1 %patch22 -p1 +%if %{with_pipewire0_3} %patch23 -p1 +%endif +%patch24 -p1 +%patch25 -p1 +%patch26 -p1 +%patch27 -p1 # Firefox %patch101 -p1 %patch102 -p1 @@ -330,15 +361,24 @@ DATE="\"$(date -d "${modified}" "+%%b %%e %%Y")\"" TIME="\"$(date -d "${modified}" "+%%R")\"" find . -regex ".*\.c\|.*\.cpp\|.*\.h" -exec sed -i "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} + + +# SLE-12 provides python36, but that package does not provide a python3 binary +%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000 +sed -i "s/python3/python36/g" configure.in +sed -i "s/python3/python36/g" mach +export PYTHON3=/usr/bin/python36 +%endif + # kdehelperversion=$(cat toolkit/xre/nsKDEUtils.cpp | grep '#define KMOZILLAHELPER_VERSION' | cut -d ' ' -f 3) if test "$kdehelperversion" != %{kde_helper_version}; then echo fix kde helper version in the .spec file exit 1 fi -source %{SOURCE4} %endif # only_print_mozconfig +source %{SOURCE4} + export CARGO_HOME=${RPM_BUILD_DIR}/%{srcname}-%{orig_version}/.cargo export MOZ_SOURCE_CHANGESET=$RELEASE_TAG export SOURCE_REPO=$RELEASE_REPO @@ -349,7 +389,7 @@ export BUILD_OFFICIAL=1 export MOZ_TELEMETRY_REPORTING=1 %if 0%{?suse_version} <= 1320 -export CC=gcc-7 +export CC=gcc-9 %else %if 0%{?clang_build} == 0 export CC=gcc @@ -374,8 +414,17 @@ echo "export CC=$CC" echo "export CXX=$CXX" echo "export CFLAGS=\"$CFLAGS\"" +echo "export CXXFLAGS=\"$CXXFLAGS\"" echo "export LDFLAGS=\"$LDFLAGS\"" echo "export RUSTFLAGS=\"$RUSTFLAGS\"" +echo "export CARGO_HOME=\"$CARGO_HOME\"" +echo "export PATH=\"$PATH\"" +echo "export LD_LIBRARY_PATH=\"$LD_LIBRARY_PATH\"" +echo "export PKG_CONFIG_PATH=\"$PKG_CONFIG_PATH\"" +echo "export MOZCONFIG=\"$MOZCONFIG\"" +echo "export MOZILLA_OFFICIAL=1" +echo "export BUILD_OFFICIAL=1" +echo "export MOZ_TELEMETRY_REPORTING=1" echo "" cat << EOF %else @@ -395,9 +444,10 @@ ac_add_options --libdir=%{_libdir} ac_add_options --includedir=%{_includedir} ac_add_options --enable-release +%if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000 +ac_add_options --enable-default-toolkit=cairo-gtk3 +%else ac_add_options --enable-default-toolkit=cairo-gtk3-wayland -%if 0%{?suse_version} >= 1550 -ac_add_options --disable-gconf %endif # bmo#1441155 - Disable the generation of Rust debug symbols on Linux32 %ifarch %ix86 %arm @@ -423,7 +473,6 @@ ac_add_options --disable-tests ac_add_options --enable-alsa ac_add_options --disable-debug -ac_add_options --enable-startup-notification #ac_add_options --enable-chrome-format=jar ac_add_options --enable-update-channel=%{update_channel} ac_add_options --with-mozilla-api-keyfile=%{SOURCE18} ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.n5KVZn/_old 2020-07-06 16:25:34.794479105 +0200 +++ /var/tmp/diff_new_pack.n5KVZn/_new 2020-07-06 16:25:34.794479105 +0200 @@ -44,6 +44,7 @@ </overwrite> <overwrite> <conditions> + <arch>ppc64</arch> <arch>ppc64le</arch> </conditions> <hardware> ++++++ create-tar.sh ++++++ --- /var/tmp/diff_new_pack.n5KVZn/_old 2020-07-06 16:25:34.806479142 +0200 +++ /var/tmp/diff_new_pack.n5KVZn/_new 2020-07-06 16:25:34.806479142 +0200 @@ -181,10 +181,7 @@ BUILD_ID=$(get_build_number "$VERSION$VERSION_SUFFIX") if [ -z ${SKIP_LOCALES+x} ]; then - # TODO: Thunderbird has usually "default" as locale entry. - # There we probably need to double-check Firefox-locals - # For now, just download every time for Thunderbird - if [ "$PRODUCT" = "firefox" ] && [ "$PREV_VERSION" != "" ] && locales_unchanged "$BUILD_ID"; then + if [ "$PREV_VERSION" != "" ] && locales_unchanged "$BUILD_ID"; then printf "%-40s: Did not change. Skipping.\n" "locales" LOCALES_CHANGED=0 else ++++++ firefox-77.0.1.source.tar.xz -> firefox-78.0.1.source.tar.xz ++++++ /work/SRC/openSUSE:Factory/MozillaFirefox/firefox-77.0.1.source.tar.xz /work/SRC/openSUSE:Factory/.MozillaFirefox.new.3060/firefox-78.0.1.source.tar.xz differ: char 15, line 1 ++++++ l10n-77.0.1.tar.xz -> l10n-78.0.1.tar.xz ++++++ /work/SRC/openSUSE:Factory/MozillaFirefox/l10n-77.0.1.tar.xz /work/SRC/openSUSE:Factory/.MozillaFirefox.new.3060/l10n-78.0.1.tar.xz differ: char 26, line 1 ++++++ mozilla-bmo1634646.patch -> mozilla-bmo1602730.patch ++++++ --- /work/SRC/openSUSE:Factory/MozillaFirefox/mozilla-bmo1634646.patch 2020-06-05 20:07:56.225291147 +0200 +++ /work/SRC/openSUSE:Factory/.MozillaFirefox.new.3060/mozilla-bmo1602730.patch 2020-07-06 16:25:20.134434155 +0200 @@ -1,26 +1,25 @@ # HG changeset patch -# User Wolfgang Rosenauer <[email protected]> -# Parent 43820d9e289abee98a2e3cdb4314848de3bc8622 +# User [email protected] +# Date 1582805890 -3600 +# Thu Feb 27 13:18:10 2020 +0100 +# Node ID 457cbe5705f2a3759d3da36a05c0ed66ec61ea12 +# Parent 7440f4b6bab85068ca2f84e9c48e0706d04330e8 +imported patch mozilla-bmo1602730-FF73.patch -diff --git a/build/pgo/profileserver.py b/build/pgo/profileserver.py ---- a/build/pgo/profileserver.py -+++ b/build/pgo/profileserver.py -@@ -127,17 +127,17 @@ if __name__ == '__main__': - # Bug 1553850 considers fixing this. - env["MOZ_DISABLE_CONTENT_SANDBOX"] = "1" - env["MOZ_DISABLE_RDD_SANDBOX"] = "1" +diff -r 7440f4b6bab8 gfx/layers/composite/CompositableHost.cpp +--- a/gfx/layers/composite/CompositableHost.cpp Thu Feb 27 13:17:56 2020 +0100 ++++ b/gfx/layers/composite/CompositableHost.cpp Wed Jun 17 15:33:32 2020 +0200 +@@ -92,9 +92,13 @@ + } + MOZ_ASSERT(source); - # Ensure different pids write to different files - env["LLVM_PROFILE_FILE"] = "default_%p_random_%m.profraw" ++ // Setting an alpha-mask here breaks the URL-bar on big endian (s390x) ++ // if the typed URL is too long for the textbox (automatic scrolling needed) ++#if MOZ_LITTLE_ENDIAN() + RefPtr<EffectMask> effect = + new EffectMask(source, source->GetSize(), aTransform); + aEffects.mSecondaryEffects[EffectTypes::MASK] = effect; ++#endif + return true; + } - # Write to an output file if we're running in automation -- process_args = {} -+ process_args = {'universal_newlines': True} - if 'UPLOAD_PATH' in env: - process_args['logfile'] = os.path.join(env['UPLOAD_PATH'], 'profile-run-1.log') - - # Run Firefox a first time to initialize its profile - runner = FirefoxRunner(profile=profile, - binary=binary, - cmdargs=['data:text/html,<script>Quitter.quit()</script>'], - env=env, ++++++ mozilla-bmo1634646.patch -> mozilla-bmo1626236.patch ++++++ --- /work/SRC/openSUSE:Factory/MozillaFirefox/mozilla-bmo1634646.patch 2020-06-05 20:07:56.225291147 +0200 +++ /work/SRC/openSUSE:Factory/.MozillaFirefox.new.3060/mozilla-bmo1626236.patch 2020-07-06 16:25:22.546441551 +0200 @@ -1,26 +1,85 @@ # HG changeset patch -# User Wolfgang Rosenauer <[email protected]> -# Parent 43820d9e289abee98a2e3cdb4314848de3bc8622 +# User [email protected] +# Date 1582805876 -3600 +# Thu Feb 27 13:17:56 2020 +0100 +# Node ID cc3d09abea31068e57f1ab918782f9f86fc6a158 +# Parent 9cd90914846f667f18babc491a74c164ae5d6e9f +imported patch decoder_workaround.patch -diff --git a/build/pgo/profileserver.py b/build/pgo/profileserver.py ---- a/build/pgo/profileserver.py -+++ b/build/pgo/profileserver.py -@@ -127,17 +127,17 @@ if __name__ == '__main__': - # Bug 1553850 considers fixing this. - env["MOZ_DISABLE_CONTENT_SANDBOX"] = "1" - env["MOZ_DISABLE_RDD_SANDBOX"] = "1" +diff -r 9cd90914846f image/decoders/nsGIFDecoder2.cpp +--- a/image/decoders/nsGIFDecoder2.cpp Thu Feb 27 12:57:14 2020 +0100 ++++ b/image/decoders/nsGIFDecoder2.cpp Fri Mar 27 13:06:18 2020 +0100 +@@ -422,6 +422,9 @@ + MOZ_ASSERT(mSwizzleFn); + uint8_t* data = reinterpret_cast<uint8_t*>(aColormap); + mSwizzleFn(data, data, aColors); ++#if MOZ_BIG_ENDIAN() ++ SwizzleRow(SurfaceFormat::A8R8G8B8, SurfaceFormat::B8G8R8A8)(data, data, aColors); ++#endif + } - # Ensure different pids write to different files - env["LLVM_PROFILE_FILE"] = "default_%p_random_%m.profraw" + LexerResult nsGIFDecoder2::DoDecode(SourceBufferIterator& aIterator, +diff -r 9cd90914846f image/decoders/nsJPEGDecoder.cpp +--- a/image/decoders/nsJPEGDecoder.cpp Thu Feb 27 12:57:14 2020 +0100 ++++ b/image/decoders/nsJPEGDecoder.cpp Fri Mar 27 13:06:18 2020 +0100 +@@ -263,6 +263,9 @@ + case JCS_YCbCr: + // By default, we will output directly to BGRA. If we need to apply + // special color transforms, this may change. ++#if MOZ_BIG_ENDIAN() ++ mInfo.out_color_space = MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB; ++#else + switch (SurfaceFormat::OS_RGBX) { + case SurfaceFormat::B8G8R8X8: + mInfo.out_color_space = JCS_EXT_BGRX; +@@ -277,6 +280,7 @@ + mState = JPEG_ERROR; + return Transition::TerminateFailure(); + } ++#endif + break; + case JCS_CMYK: + case JCS_YCCK: +diff -r 9cd90914846f image/decoders/nsPNGDecoder.cpp +--- a/image/decoders/nsPNGDecoder.cpp Thu Feb 27 12:57:14 2020 +0100 ++++ b/image/decoders/nsPNGDecoder.cpp Fri Mar 27 13:06:18 2020 +0100 +@@ -361,7 +361,7 @@ + IResumable* aOnResume) { + MOZ_ASSERT(!HasError(), "Shouldn't call DoDecode after error!"); - # Write to an output file if we're running in automation -- process_args = {} -+ process_args = {'universal_newlines': True} - if 'UPLOAD_PATH' in env: - process_args['logfile'] = os.path.join(env['UPLOAD_PATH'], 'profile-run-1.log') +- return mLexer.Lex(aIterator, aOnResume, ++ LexerResult res = mLexer.Lex(aIterator, aOnResume, + [=](State aState, const char* aData, size_t aLength) { + switch (aState) { + case State::PNG_DATA: +@@ -371,6 +371,14 @@ + } + MOZ_CRASH("Unknown State"); + }); ++ ++#if MOZ_BIG_ENDIAN() ++ if(res.is<TerminalState>() && res.as<TerminalState>() == TerminalState::SUCCESS) { ++ NativeEndian::swapToLittleEndianInPlace<uint32_t>((uint32_t*)(mImageData), mImageDataLength / 4); ++ } ++#endif ++ ++ return res; + } - # Run Firefox a first time to initialize its profile - runner = FirefoxRunner(profile=profile, - binary=binary, - cmdargs=['data:text/html,<script>Quitter.quit()</script>'], - env=env, + LexerTransition<nsPNGDecoder::State> nsPNGDecoder::ReadPNGData( +diff -r 9cd90914846f image/decoders/nsWebPDecoder.cpp +--- a/image/decoders/nsWebPDecoder.cpp Thu Feb 27 12:57:14 2020 +0100 ++++ b/image/decoders/nsWebPDecoder.cpp Fri Mar 27 13:06:18 2020 +0100 +@@ -237,7 +237,12 @@ + // WebP doesn't guarantee that the alpha generated matches the hint in the + // header, so we always need to claim the input is BGRA. If the output is + // BGRX, swizzling will mask off the alpha channel. ++#if MOZ_BIG_ENDIAN() ++ mBuffer.colorspace = MODE_ARGB; ++ SurfaceFormat inFormat = mFormat; ++#else + SurfaceFormat inFormat = SurfaceFormat::OS_RGBA; ++#endif + + SurfacePipeFlags pipeFlags = SurfacePipeFlags(); + if (mFormat == SurfaceFormat::OS_RGBA && ++++++ mozilla-bmo1634646.patch -> mozilla-bmo998749.patch ++++++ --- /work/SRC/openSUSE:Factory/MozillaFirefox/mozilla-bmo1634646.patch 2020-06-05 20:07:56.225291147 +0200 +++ /work/SRC/openSUSE:Factory/.MozillaFirefox.new.3060/mozilla-bmo998749.patch 2020-07-06 16:25:23.466444372 +0200 @@ -1,26 +1,29 @@ # HG changeset patch -# User Wolfgang Rosenauer <[email protected]> -# Parent 43820d9e289abee98a2e3cdb4314848de3bc8622 +# User [email protected] +# Date 1583738770 -3600 +# Mon Mar 09 08:26:10 2020 +0100 +# Node ID 34676feac1a542e409e22acf5b98735f8313b1ce +# Parent 506857dace0a08d1c9685e3ac264646590b3e27f +[mq]: mozilla-bmo998749.patch -diff --git a/build/pgo/profileserver.py b/build/pgo/profileserver.py ---- a/build/pgo/profileserver.py -+++ b/build/pgo/profileserver.py -@@ -127,17 +127,17 @@ if __name__ == '__main__': - # Bug 1553850 considers fixing this. - env["MOZ_DISABLE_CONTENT_SANDBOX"] = "1" - env["MOZ_DISABLE_RDD_SANDBOX"] = "1" +diff -r 506857dace0a -r 34676feac1a5 gfx/2d/FilterProcessing.h +--- a/gfx/2d/FilterProcessing.h Fri Feb 28 12:31:51 2020 +0100 ++++ b/gfx/2d/FilterProcessing.h Mon Mar 09 08:26:10 2020 +0100 +@@ -13,10 +13,17 @@ + namespace mozilla { + namespace gfx { - # Ensure different pids write to different files - env["LLVM_PROFILE_FILE"] = "default_%p_random_%m.profraw" ++#if MOZ_BIG_ENDIAN() ++const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_B = 3; ++const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_G = 2; ++const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_R = 1; ++const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_A = 0; ++#else + const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_B = 0; + const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_G = 1; + const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_R = 2; + const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_A = 3; ++#endif - # Write to an output file if we're running in automation -- process_args = {} -+ process_args = {'universal_newlines': True} - if 'UPLOAD_PATH' in env: - process_args['logfile'] = os.path.join(env['UPLOAD_PATH'], 'profile-run-1.log') - - # Run Firefox a first time to initialize its profile - runner = FirefoxRunner(profile=profile, - binary=binary, - cmdargs=['data:text/html,<script>Quitter.quit()</script>'], - env=env, + class FilterProcessing { + public: ++++++ mozilla-kde.patch ++++++ --- /var/tmp/diff_new_pack.n5KVZn/_old 2020-07-06 16:25:35.034479841 +0200 +++ /var/tmp/diff_new_pack.n5KVZn/_new 2020-07-06 16:25:35.038479853 +0200 @@ -3,7 +3,7 @@ # Date 1559294891 -7200 # Fri May 31 11:28:11 2019 +0200 # Node ID c2aa7198fb925e7fde96abf65b6f68b9b755f112 -# Parent b517aa8dfa37d729db9590fe699caa38f899dfba +# Parent aa58e8c70d1448a08407c6c191ea8b76d61e8bf6 Description: Add KDE integration to Firefox (toolkit parts) Author: Wolfgang Rosenauer <[email protected]> Author: Lubos Lunak <[email protected]> @@ -175,7 +175,7 @@ diff --git a/toolkit/mozapps/downloads/HelperAppDlg.jsm b/toolkit/mozapps/downloads/HelperAppDlg.jsm --- a/toolkit/mozapps/downloads/HelperAppDlg.jsm +++ b/toolkit/mozapps/downloads/HelperAppDlg.jsm -@@ -1205,36 +1205,66 @@ nsUnknownContentTypeDialog.prototype = { +@@ -1203,36 +1203,66 @@ nsUnknownContentTypeDialog.prototype = { params.handlerApp && params.handlerApp.executable && params.handlerApp.executable.isFile() @@ -800,7 +800,7 @@ using mozilla::dom::RemoteHandlerApp; namespace { -@@ -294,17 +294,17 @@ mozilla::ipc::IPCResult HandlerServicePa +@@ -299,17 +299,17 @@ mozilla::ipc::IPCResult HandlerServicePa mozilla::ipc::IPCResult HandlerServiceParent::RecvExistsForProtocolOS( const nsCString& aProtocolScheme, bool* aHandlerExists) { if (aProtocolScheme.Length() > MAX_SCHEME_LENGTH) { @@ -819,7 +819,7 @@ /* * Check if a handler exists for the provided protocol. Check the datastore -@@ -323,17 +323,17 @@ mozilla::ipc::IPCResult HandlerServicePa +@@ -328,17 +328,17 @@ mozilla::ipc::IPCResult HandlerServicePa nsCOMPtr<nsIExternalProtocolService> protoSvc = do_GetService(NS_EXTERNALPROTOCOLSERVICE_CONTRACTID, &rv); if (NS_WARN_IF(NS_FAILED(rv))) { @@ -1214,7 +1214,7 @@ #include "nsIFileStreams.h" #include "nsILineInputStream.h" #include "nsIFile.h" -@@ -1023,17 +1023,17 @@ nsresult nsOSHelperAppService::GetHandle +@@ -1022,17 +1022,17 @@ nsresult nsOSHelperAppService::GetHandle nsresult nsOSHelperAppService::OSProtocolHandlerExists( const char* aProtocolScheme, bool* aHandlerExists) { @@ -1233,7 +1233,7 @@ nsCOMPtr<nsIHandlerService> handlerSvc = do_GetService(NS_HANDLERSERVICE_CONTRACTID, &rv); if (NS_SUCCEEDED(rv) && handlerSvc) { -@@ -1043,17 +1043,17 @@ nsresult nsOSHelperAppService::OSProtoco +@@ -1042,17 +1042,17 @@ nsresult nsOSHelperAppService::OSProtoco } return rv; @@ -1252,7 +1252,7 @@ NS_IMETHODIMP nsOSHelperAppService::IsCurrentAppOSDefaultForProtocol( const nsACString& aScheme, bool* _retval) { -@@ -1140,17 +1140,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel +@@ -1139,17 +1139,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel nsresult rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType, minorType, mime_types_description, true); @@ -1271,7 +1271,7 @@ rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType, minorType, mime_types_description, false); -@@ -1252,17 +1252,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel +@@ -1251,17 +1251,17 @@ already_AddRefed<nsMIMEInfoBase> nsOSHel // Now look up our extensions nsAutoString extensions, mime_types_description; @@ -1293,7 +1293,7 @@ diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build --- a/widget/gtk/moz.build +++ b/widget/gtk/moz.build -@@ -129,16 +129,17 @@ include('/ipc/chromium/chromium-config.m +@@ -131,16 +131,17 @@ include('/ipc/chromium/chromium-config.m FINAL_LIBRARY = 'xul' @@ -1331,13 +1331,13 @@ #include "nsGtkUtils.h" #include "nsIFileURL.h" #include "nsIGIOService.h" -@@ -20,16 +21,18 @@ - #include "nsArrayEnumerator.h" +@@ -22,16 +23,18 @@ #include "nsMemory.h" #include "nsEnumeratorUtils.h" #include "nsNetUtil.h" #include "nsReadableUtils.h" - #include "mozcontainer.h" + #include "MozContainer.h" + #include "gfxPlatformGtk.h" #include "nsFilePicker.h" +#include "nsKDEUtils.h" @@ -1350,7 +1350,7 @@ #define MAX_PREVIEW_SOURCE_SIZE 4096 nsIFile* nsFilePicker::mPrevDisplayDirectory = nullptr; -@@ -223,17 +226,19 @@ nsFilePicker::AppendFilters(int32_t aFil +@@ -231,17 +234,19 @@ nsFilePicker::AppendFilters(int32_t aFil mAllowURLs = !!(aFilterMask & filterAllowURLs); return nsBaseFilePicker::AppendFilters(aFilterMask); } @@ -1371,7 +1371,7 @@ mFilters.AppendElement(filter); mFilterNames.AppendElement(name); -@@ -333,16 +338,39 @@ nsresult nsFilePicker::Show(int16_t* aRe +@@ -341,16 +346,39 @@ nsresult nsFilePicker::Show(int16_t* aRe return NS_OK; } @@ -1411,7 +1411,7 @@ GtkFileChooserAction action = GetGtkFileChooserAction(mMode); const gchar* accept_button; -@@ -562,16 +590,244 @@ void nsFilePicker::Done(void* file_choos +@@ -570,16 +598,244 @@ void nsFilePicker::Done(void* file_choos mCallback->Done(result); mCallback = nullptr; } else { @@ -1685,7 +1685,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp --- a/xpcom/components/ManifestParser.cpp +++ b/xpcom/components/ManifestParser.cpp -@@ -33,16 +33,17 @@ +@@ -34,16 +34,17 @@ #include "nsTextFormatter.h" #include "nsVersionComparator.h" #include "nsXPCOMCIDInternal.h" @@ -1703,7 +1703,7 @@ int argc; bool ischrome; -@@ -393,16 +394,17 @@ void ParseManifest(NSLocationType aType, +@@ -394,16 +395,17 @@ void ParseManifest(NSLocationType aType, NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled"); NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired"); NS_NAMED_LITERAL_STRING(kApplication, "application"); @@ -1721,7 +1721,7 @@ NS_NAMED_LITERAL_STRING(kMain, "main"); NS_NAMED_LITERAL_STRING(kContent, "content"); -@@ -448,39 +450,44 @@ void ParseManifest(NSLocationType aType, +@@ -449,39 +451,44 @@ void ParseManifest(NSLocationType aType, CopyUTF8toUTF16(s, abi); abi.Insert(char16_t('_'), 0); abi.Insert(osTarget, 0); @@ -1742,8 +1742,8 @@ + desktop = NS_LITERAL_STRING("win"); # pragma warning(pop) #elif defined(MOZ_WIDGET_COCOA) - SInt32 majorVersion = nsCocoaFeatures::OSXVersionMajor(); - SInt32 minorVersion = nsCocoaFeatures::OSXVersionMinor(); + SInt32 majorVersion = nsCocoaFeatures::macOSVersionMajor(); + SInt32 minorVersion = nsCocoaFeatures::macOSVersionMinor(); nsTextFormatter::ssprintf(osVersion, u"%ld.%ld", majorVersion, minorVersion); + desktop = NS_LITERAL_STRING("macosx"); #elif defined(MOZ_WIDGET_GTK) @@ -1766,7 +1766,7 @@ process = kMain; } -@@ -567,25 +574,27 @@ void ParseManifest(NSLocationType aType, +@@ -568,25 +575,27 @@ void ParseManifest(NSLocationType aType, TriState stOsVersion = eUnspecified; TriState stOs = eUnspecified; TriState stABI = eUnspecified; @@ -1794,7 +1794,7 @@ continue; } -@@ -622,17 +631,17 @@ void ParseManifest(NSLocationType aType, +@@ -623,17 +632,17 @@ void ParseManifest(NSLocationType aType, } LogMessageWithContext( @@ -1833,7 +1833,7 @@ if CONFIG['MOZ_ENABLE_DBUS']: CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS'] - if CONFIG['MOZ_LAYOUT_DEBUGGER']: + include('/ipc/chromium/chromium-config.mozbuild') diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp --- a/xpcom/io/nsLocalFileUnix.cpp +++ b/xpcom/io/nsLocalFileUnix.cpp @@ -1855,7 +1855,7 @@ # include "prmem.h" # include "plbase64.h" -@@ -1907,62 +1908,77 @@ nsLocalFile::SetPersistentDescriptor(con +@@ -1898,62 +1899,77 @@ nsLocalFile::SetPersistentDescriptor(con NS_IMETHODIMP nsLocalFile::Reveal() { ++++++ mozilla-pipewire-0-3.patch ++++++ ++++ 846 lines (skipped) ++++++ mozilla-s390x-skia-gradient.patch ++++++ # HG changeset patch # Parent acf59ea86dd1d878b43920832093f082dcfc61c0 diff -r acf59ea86dd1 gfx/skia/skia/src/shaders/gradients/Sk4fLinearGradient.cpp --- a/gfx/skia/skia/src/shaders/gradients/Sk4fLinearGradient.cpp Mon Mar 09 08:26:10 2020 +0100 +++ b/gfx/skia/skia/src/shaders/gradients/Sk4fLinearGradient.cpp Fri Mar 27 13:30:28 2020 +0100 @@ -7,7 +7,7 @@ #include "include/core/SkPaint.h" #include "src/shaders/gradients/Sk4fLinearGradient.h" - +#include "src/core/SkEndian.h" #include <cmath> #include <utility> @@ -28,6 +28,9 @@ while (n >= 4) { DstTraits<premul>::store4x(c0, c1, c2, c3, dst, bias0, bias1); +#ifdef SK_CPU_BENDIAN + SkEndianSwap32s(dst, 4); +#endif dst += 4; c0 = c0 + dc4; @@ -37,12 +40,23 @@ n -= 4; } if (n & 2) { - DstTraits<premul>::store(c0, dst++, bias0); - DstTraits<premul>::store(c1, dst++, bias1); + DstTraits<premul>::store(c0, dst, bias0); +#ifdef SK_CPU_BENDIAN + *dst = SkEndianSwap32(*dst); +#endif + ++dst; + DstTraits<premul>::store(c1, dst, bias1); +#ifdef SK_CPU_BENDIAN + *dst = SkEndianSwap32(*dst); +#endif + ++dst; c0 = c0 + dc2; } if (n & 1) { DstTraits<premul>::store(c0, dst, bias0); +#ifdef SK_CPU_BENDIAN + *dst = SkEndianSwap32(*dst); +#endif } } ++++++ mozilla.sh.in ++++++ --- /var/tmp/diff_new_pack.n5KVZn/_old 2020-07-06 16:25:35.094480025 +0200 +++ /var/tmp/diff_new_pack.n5KVZn/_new 2020-07-06 16:25:35.094480025 +0200 @@ -87,9 +87,11 @@ export MOZ_ENABLE_WAYLAND=1 fi -# enable xinput2 (boo#1032003) -# breaks too many things right now (boo#1053959) -#export MOZ_USE_XINPUT2=1 +# xinput2 (boo#1173320) +source /etc/os-release +if [ "$ID" = "opensuse-tumbleweed" ]; then + export MOZ_USE_XINPUT2=1 +fi moz_debug=0 script_args="" ++++++ tar_stamps ++++++ --- /var/tmp/diff_new_pack.n5KVZn/_old 2020-07-06 16:25:35.126480123 +0200 +++ /var/tmp/diff_new_pack.n5KVZn/_new 2020-07-06 16:25:35.126480123 +0200 @@ -1,11 +1,11 @@ PRODUCT="firefox" CHANNEL="release" -VERSION="77.0.1" +VERSION="78.0.1" VERSION_SUFFIX="" -PREV_VERSION="77.0" +PREV_VERSION="78.0" PREV_VERSION_SUFFIX="" #SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release" -RELEASE_TAG="b8d272601020250ac2897e113b3fc3b53b72cf4b" -RELEASE_TIMESTAMP="20200602222727" +RELEASE_TAG="52486654c09a5248ae83230ee380b1dbb7ad2ef4" +RELEASE_TIMESTAMP="20200625152958"
