From f1f2bf264a73437553141f9aa94f15f7734b46e1348fd23ed3ba684b839b2251 Mon Sep 17 00:00:00 2001 From: Wolfgang Rosenauer Date: Tue, 5 May 2020 19:25:39 +0000 Subject: [PATCH] - Mozilla Firefox 76.0 * Lockwise improvements * Improvements in Picture-in-Picture feature * Support Audio Worklets MFSA-2020-16 (bsc#1171186) * CVE-2020-12387 (bmo#1545345) Use-after-free during worker shutdown * CVE-2020-12388 (bmo#1618911) Sandbox escape with improperly guarded Access Tokens * CVE-2020-12389 (bmo#1554110) Sandbox escape with improperly separated process types * CVE-2020-6831 (bmo#1632241) Buffer overflow in SCTP chunk input validation * CVE-2020-12390 (bmo#1141959) Incorrect serialization of nsIPrincipal.origin for IPv6 addresses * CVE-2020-12391 (bmo#1457100) Content-Security-Policy bypass using object elements * CVE-2020-12392 (bmo#1614468) Arbitrary local file access with 'Copy as cURL' * CVE-2020-12393 (bmo#1615471) Devtools' 'Copy as cURL' feature did not fully escape website-controlled data, potentially leading to command injection * CVE-2020-12394 (bmo#1628288) URL spoofing in location bar when unfocussed * CVE-2020-12395 (bmo#1595886, bmo#1611482, bmo#1614704, bmo#1624098, bmo#1625749, bmo#1626382, bmo#1628076, bmo#1631508) Memory safety bugs fixed in Firefox 76 and Firefox ESR 68.8 * CVE-2020-12396 (bmo#1339601, bmo#1611938, bmo#1620488, bmo#1622291, bmo#1627644) Memory safety bugs fixed in Firefox 76 OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=825 --- MozillaFirefox.changes | 39 ++++++++++++++++++++++++++++ MozillaFirefox.spec | 11 +++----- firefox-75.0.source.tar.xz | 3 --- firefox-75.0.source.tar.xz.asc | 16 ------------ firefox-76.0.source.tar.xz | 3 +++ firefox-76.0.source.tar.xz.asc | 16 ++++++++++++ l10n-75.0.tar.xz | 3 --- l10n-76.0.tar.xz | 3 +++ mozilla-bmo1463035.patch | 46 ++-------------------------------- mozilla-bmo1622013.patch | 28 --------------------- mozilla-kde.patch | 40 ++++++++++++++++------------- tar_stamps | 8 +++--- 12 files changed, 93 insertions(+), 123 deletions(-) delete mode 100644 firefox-75.0.source.tar.xz delete mode 100644 firefox-75.0.source.tar.xz.asc create mode 100644 firefox-76.0.source.tar.xz create mode 100644 firefox-76.0.source.tar.xz.asc delete mode 100644 l10n-75.0.tar.xz create mode 100644 l10n-76.0.tar.xz delete mode 100644 mozilla-bmo1622013.patch diff --git a/MozillaFirefox.changes b/MozillaFirefox.changes index e1116ef9..e995e6bd 100644 --- a/MozillaFirefox.changes +++ b/MozillaFirefox.changes @@ -1,3 +1,42 @@ +------------------------------------------------------------------- +Fri May 1 11:59:58 UTC 2020 - Wolfgang Rosenauer + +- Mozilla Firefox 76.0 + * Lockwise improvements + * Improvements in Picture-in-Picture feature + * Support Audio Worklets + MFSA-2020-16 (bsc#1171186) + * CVE-2020-12387 (bmo#1545345) + Use-after-free during worker shutdown + * CVE-2020-12388 (bmo#1618911) + Sandbox escape with improperly guarded Access Tokens + * CVE-2020-12389 (bmo#1554110) + Sandbox escape with improperly separated process types + * CVE-2020-6831 (bmo#1632241) + Buffer overflow in SCTP chunk input validation + * CVE-2020-12390 (bmo#1141959) + Incorrect serialization of nsIPrincipal.origin for IPv6 addresses + * CVE-2020-12391 (bmo#1457100) + Content-Security-Policy bypass using object elements + * CVE-2020-12392 (bmo#1614468) + Arbitrary local file access with 'Copy as cURL' + * CVE-2020-12393 (bmo#1615471) + Devtools' 'Copy as cURL' feature did not fully escape + website-controlled data, potentially leading to command injection + * CVE-2020-12394 (bmo#1628288) + URL spoofing in location bar when unfocussed + * CVE-2020-12395 (bmo#1595886, bmo#1611482, bmo#1614704, bmo#1624098, + bmo#1625749, bmo#1626382, bmo#1628076, bmo#1631508) + Memory safety bugs fixed in Firefox 76 and Firefox ESR 68.8 + * CVE-2020-12396 (bmo#1339601, bmo#1611938, bmo#1620488, + bmo#1622291, bmo#1627644) + Memory safety bugs fixed in Firefox 76 +- requires + * NSS >= 3.51.1 + * nasm >= 2.14 +- removed obsolete patch mozilla-bmo1622013.patch +- fix URI creation for KDE file selector integration (boo#1160331) + ------------------------------------------------------------------- Tue Apr 7 12:18:27 UTC 2020 - Wolfgang Rosenauer diff --git a/MozillaFirefox.spec b/MozillaFirefox.spec index 591660f0..0424fe39 100644 --- a/MozillaFirefox.spec +++ b/MozillaFirefox.spec @@ -18,9 +18,9 @@ # changed with every update -%define major 75 +%define major 76 %define mainver %major.0 -%define orig_version 75.0 +%define orig_version 76.0 %define orig_suffix %{nil} %define update_channel release %define branding 1 @@ -84,8 +84,8 @@ BuildRequires: libnotify-devel BuildRequires: libproxy-devel BuildRequires: makeinfo BuildRequires: mozilla-nspr-devel >= 4.25 -BuildRequires: mozilla-nss-devel >= 3.51 -BuildRequires: nasm >= 2.13 +BuildRequires: mozilla-nss-devel >= 3.51.1 +BuildRequires: nasm >= 2.14 BuildRequires: nodejs10 >= 10.19.0 BuildRequires: python-devel BuildRequires: python2-xml @@ -186,7 +186,6 @@ Patch19: mozilla-bmo1512162.patch Patch20: mozilla-fix-top-level-asm.patch Patch21: mozilla-bmo1504834-part4.patch Patch22: mozilla-bmo849632.patch -Patch23: mozilla-bmo1622013.patch # Firefox/browser Patch101: firefox-kde.patch Patch102: firefox-branded-icons.patch @@ -322,7 +321,6 @@ cd $RPM_BUILD_DIR/%{srcname}-%{orig_version} %patch20 -p1 %patch21 -p1 %patch22 -p1 -%patch23 -p1 # Firefox %patch101 -p1 %patch102 -p1 @@ -662,7 +660,6 @@ exit 0 %{progdir}/browser/defaults %{progdir}/browser/features/ %{progdir}/browser/chrome/icons -%{progdir}/browser/blocklist.xml %{progdir}/browser/omni.ja %dir %{progdir}/distribution/ %{progdir}/distribution/extensions/ diff --git a/firefox-75.0.source.tar.xz b/firefox-75.0.source.tar.xz deleted file mode 100644 index fa4f9d9e..00000000 --- a/firefox-75.0.source.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bbb1054d8f2717c634480556d3753a8483986af7360e023bb6232df80b746b0f -size 324614064 diff --git a/firefox-75.0.source.tar.xz.asc b/firefox-75.0.source.tar.xz.asc deleted file mode 100644 index fe0ba4a4..00000000 --- a/firefox-75.0.source.tar.xz.asc +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCgAdFiEECXsxMHeuYqAvhNpN8aZmj7t9Vy4FAl6HkaUACgkQ8aZmj7t9 -Vy4dmg//UdZoIejlXG67lkOdFnVYDJmBnQN4481u6hntUxR9VCO8LDx+1PdRbcz+ -CByteJN+UECuPcw2A0ZHNeya7ea6iE5u+XkvZTw0Ch1dNGYdz1gI+m1hLm4KcGsk -EDXCwFy3JufPujuVnWzhmEtpsHVIwLV+KdyXBiO8cdyNQ6pmrDg+DfoGfpVyAIi7 -4SYG7pdn82xVYM5zubo8RBMMMWqIg4DcOxc8zV/lc1ODDqGEzpOolKo55oKmMfE/ -4amJy+b/XgAfrPHETISF6dQueJoSsNGlpcEya++cUfjTPOAhYXYV6V0+hJAKhTo/ -u+lT9rNfidR3Y5BaRyZIVzzZURVfFN4ExXC9IB1hSc5OWQ86uOA6ZGvoV4KLEEk2 -awlrKpaZx7p7bEiuJ2DrB92Karaln8qaUKCzaPWRWouGEuu/4f1cv1PO/Svq6vJL -FYpRSZK6zezMyhtzIoVz2cD+FWj8fV/10VbRgEDub6CnnaBc6QMfaMIUkA9ppkfP -phwzNflcJ+oGOpBrcTNHfdMpvcMPrZXVFlX5BAvjcD//fxxzjEd+rCe9KT8rohvp -rkuQuCU2CYijSLCaZy5QRzbCFcyIdR5n0GLBRMLVc/VftdKAcIaVNPWMTLDHK6Ch -uJ7XnFiQL+XYoqh3BbhgoZatqpkZkI1eblK0Rhkagd/A2AcbC74= -=fw6a ------END PGP SIGNATURE----- diff --git a/firefox-76.0.source.tar.xz b/firefox-76.0.source.tar.xz new file mode 100644 index 00000000..092c6b38 --- /dev/null +++ b/firefox-76.0.source.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b7b97b0b0625fc6ec23ee28d425988c679d3a56f362d62fd3b225a5d50afdc8 +size 323886744 diff --git a/firefox-76.0.source.tar.xz.asc b/firefox-76.0.source.tar.xz.asc new file mode 100644 index 00000000..11c73cc1 --- /dev/null +++ b/firefox-76.0.source.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCgAdFiEECXsxMHeuYqAvhNpN8aZmj7t9Vy4FAl6p+MgACgkQ8aZmj7t9 +Vy6+XQ/+IPcI/KuOE8DdYKvY2o/gPgzP4mJlhhfJyKwEf0Uk2WzA2oe0GU/PuB4Y +qvqoHUr4RnMN4D5K+TyMu7HdIhPbGyedgMdSp3u6Uyb2tGYHq2A8+RgV62AYovpb +p5KrVIaZLCNjK4evXxybSioQv9zA2lwn6zUyVWJuHPYl77fk0/XwG7Y7PmORgsta +AAfkf38HJIX0+5D8wKi98B4+BKFF5kfzi7nNkOHMjJgL+4qacmy0ieSbvoEq0R4f +JYKVxd4me/filS8mQZV8ebtOPBME+/GPTsl3kB9iAuHXEZyrhP6PN4CYG1UDDgUZ +eqKB9vBR2Dq9AVUSiKV9+U2ftgsTTTgkoUCCvFH7J61fDYs1aeRHtjj48lGCZDZt +K71HcPysOR1Y88mwL7ND9ZH0V/83Iw+TasuSOcBkO8OcHY12/s0b9epa8tgC6Imp +/vN3nusF4aToYcAfKknj/J9ryQvIHYg+6lUJYYo8ipsfgOYuKHDSUlLXx3Sh1g8h +Xe+hiouNY8ru44oGTPEueeMS/k41rkY+u/Ikbe9NwmArgH8mpMkAqN2Owa23pEeC +o9ghJ3zapFWUd2LK1W/5foNNW+PbWU35lL0HlhIvxI6GDMSFK7t0XPgK2QrKgHo+ +AA7PnIKD1RUkypNbCQEPn/LKZiCbilfLup/1PxGDK9eHNZJAnzc= +=vxJf +-----END PGP SIGNATURE----- diff --git a/l10n-75.0.tar.xz b/l10n-75.0.tar.xz deleted file mode 100644 index 397d09b5..00000000 --- a/l10n-75.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:112d3ac0374525e1119164aa5bf246ce3074c3d0ea043a7b69eaa6146707ccc3 -size 51658952 diff --git a/l10n-76.0.tar.xz b/l10n-76.0.tar.xz new file mode 100644 index 00000000..7ebd71e6 --- /dev/null +++ b/l10n-76.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d803b25ffe8ec3c7c5901dcd11cd5f804af75f6190c6a25cf63c6ac8e405c734 +size 51967492 diff --git a/mozilla-bmo1463035.patch b/mozilla-bmo1463035.patch index ab5438e7..c4683760 100644 --- a/mozilla-bmo1463035.patch +++ b/mozilla-bmo1463035.patch @@ -3,7 +3,7 @@ # User Mike Hommey # Date 1526871862 -32400 # Node ID 94f21505ff13cd089f7129cd24927cf8b31a0f43 -# Parent 71b9d492b739602dbfe713fd4de3205e9d485f18 +# Parent 0b7e1398ca2e15e27da93144ba9fb30db38367b1 Bug 1463035 - Remove MOZ_SIGNAL_TRAMPOLINE. r?darchons For some reason, GNU as is not happy with the assembly generated after @@ -12,30 +12,6 @@ bug 1238661 anymore on Debian armel. OTOH, as mentioned in bug 1238661 comment 4, we actually don't need this workaround anymore, so let's just kill it. -diff --git a/mfbt/moz.build b/mfbt/moz.build ---- a/mfbt/moz.build -+++ b/mfbt/moz.build -@@ -131,20 +131,16 @@ EXPORTS["double-conversion"] = [ - LOCAL_INCLUDES += [ - '/mfbt/double-conversion', - ] - - if CONFIG['OS_ARCH'] == 'WINNT': - EXPORTS.mozilla += [ - 'WindowsVersion.h', - ] --elif CONFIG['OS_ARCH'] == 'Linux': -- EXPORTS.mozilla += [ -- 'LinuxSignal.h', -- ] - - UNIFIED_SOURCES += [ - 'Assertions.cpp', - 'ChaosMode.cpp', - 'double-conversion/double-conversion/bignum-dtoa.cc', - 'double-conversion/double-conversion/bignum.cc', - 'double-conversion/double-conversion/cached-powers.cc', - 'double-conversion/double-conversion/double-to-string.cc', diff --git a/mozglue/baseprofiler/core/platform-linux-android.cpp b/mozglue/baseprofiler/core/platform-linux-android.cpp --- a/mozglue/baseprofiler/core/platform-linux-android.cpp +++ b/mozglue/baseprofiler/core/platform-linux-android.cpp @@ -79,25 +55,7 @@ diff --git a/mozglue/baseprofiler/core/platform-linux-android.cpp b/mozglue/base diff --git a/tools/profiler/core/platform-linux-android.cpp b/tools/profiler/core/platform-linux-android.cpp --- a/tools/profiler/core/platform-linux-android.cpp +++ b/tools/profiler/core/platform-linux-android.cpp -@@ -55,17 +55,16 @@ - #ifdef __GLIBC__ - # include // backtrace, backtrace_symbols - #endif // def __GLIBC__ - #include // index - #include - #include - - #include "prenv.h" --#include "mozilla/LinuxSignal.h" - #include "mozilla/PodOperations.h" - #include "mozilla/DebugOnly.h" - - #include - #include - - using namespace mozilla; - -@@ -257,17 +256,17 @@ Sampler::Sampler(PSLockRef aLock) +@@ -258,17 +258,17 @@ Sampler::Sampler(PSLockRef aLock) // NOTE: We don't initialize LUL here, instead initializing it in // SamplerThread's constructor. This is because with the diff --git a/mozilla-bmo1622013.patch b/mozilla-bmo1622013.patch deleted file mode 100644 index 8016939c..00000000 --- a/mozilla-bmo1622013.patch +++ /dev/null @@ -1,28 +0,0 @@ -From be45ba20c33a8a247115e79fd4c1f3295d652ba3 Mon Sep 17 00:00:00 2001 -From: Jan Beich -Date: Mon, 23 Mar 2020 08:20:22 +0000 -Subject: [PATCH] Bug 1622013 - Build *_mmx.c files with -mmmx in bundled libvpx. - -diff --git a/media/libvpx/moz.build b/media/libvpx/moz.build -index f3845941fe4de..47853d43408b7 100644 ---- a/media/libvpx/moz.build -+++ b/media/libvpx/moz.build -@@ -97,16 +97,18 @@ if CONFIG['OS_TARGET'] == 'Android': - DEFINES['__linux__'] = True - - SOURCES += [ - '%%%s/sources/android/cpufeatures/cpu-features.c' % CONFIG['ANDROID_NDK'], - ] - - for f in SOURCES: - if f.endswith('.c'): -+ if 'mmx.c' in f: -+ SOURCES[f].flags += ['-mmmx'] - if 'sse2.c' in f: - SOURCES[f].flags += CONFIG['SSE2_FLAGS'] - if 'ssse3.c' in f: - SOURCES[f].flags += ['-mssse3'] - if 'sse4.c' in f: - SOURCES[f].flags += ['-msse4.1'] - if 'avx.c' in f: - SOURCES[f].flags += ['-mavx'] diff --git a/mozilla-kde.patch b/mozilla-kde.patch index ace0920c..5b266753 100644 --- a/mozilla-kde.patch +++ b/mozilla-kde.patch @@ -3,7 +3,7 @@ # Date 1559294891 -7200 # Fri May 31 11:28:11 2019 +0200 # Node ID c2aa7198fb925e7fde96abf65b6f68b9b755f112 -# Parent fbac8545cf6f461803505c2d1f57531798dee96a +# Parent 04c2cbd396b26a8e08980304a436e5e12fb6a205 Description: Add KDE integration to Firefox (toolkit parts) Author: Wolfgang Rosenauer Author: Lubos Lunak @@ -31,7 +31,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp #ifdef MOZ_MEMORY # include "mozmemory.h" #endif -@@ -4535,25 +4536,37 @@ nsresult Preferences::InitInitialObjects +@@ -4539,25 +4540,37 @@ nsresult Preferences::InitInitialObjects // application pref files for backwards compatibility. static const char* specialFiles[] = { #if defined(XP_MACOSX) @@ -69,7 +69,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp // Load jar:$app/omni.jar!/defaults/preferences/*.js // or jar:$gre/omni.jar!/defaults/preferences/*.js. -@@ -4599,17 +4612,17 @@ nsresult Preferences::InitInitialObjects +@@ -4603,17 +4616,17 @@ nsresult Preferences::InitInitialObjects } nsCOMPtr path = do_QueryInterface(elem); @@ -87,7 +87,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp SetupTelemetryPref(); } - NS_CreateServicesFromCategory(NS_PREFSERVICE_APPDEFAULTS_TOPIC_ID, nullptr, + if (aIsStartup) { diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build --- a/modules/libpref/moz.build +++ b/modules/libpref/moz.build @@ -175,7 +175,7 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa 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 -@@ -1209,36 +1209,66 @@ nsUnknownContentTypeDialog.prototype = { +@@ -1205,36 +1205,66 @@ nsUnknownContentTypeDialog.prototype = { params.handlerApp && params.handlerApp.executable && params.handlerApp.executable.isFile() @@ -1104,7 +1104,7 @@ new file mode 100644 diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp --- a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp +++ b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp -@@ -1,47 +1,50 @@ +@@ -1,46 +1,49 @@ /* -*- Mode: C++; tab-width: 3; indent-tabs-mode: nil; c-basic-offset: 2 -*- * * This Source Code Form is subject to the terms of the Mozilla Public @@ -1117,7 +1117,6 @@ diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler #include "nsIGIOService.h" #include "nsNetCID.h" #include "nsIIOService.h" - #include "nsAutoPtr.h" #ifdef MOZ_ENABLE_DBUS # include "nsDBusHandlerApp.h" #endif @@ -1160,7 +1159,7 @@ diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler if (*_retval) return NS_OK; return NS_OK; -@@ -51,16 +54,33 @@ nsresult nsMIMEInfoUnix::LaunchDefaultWi +@@ -50,16 +53,33 @@ nsresult nsMIMEInfoUnix::LaunchDefaultWi // if mDefaultApplication is set, it means the application has been set from // either /etc/mailcap or ${HOME}/.mailcap, in which case we don't want to // give the GNOME answer. @@ -1216,7 +1215,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth #include "nsIFileStreams.h" #include "nsILineInputStream.h" #include "nsIFile.h" -@@ -1024,17 +1024,17 @@ nsresult nsOSHelperAppService::GetHandle +@@ -1023,17 +1023,17 @@ nsresult nsOSHelperAppService::GetHandle nsresult nsOSHelperAppService::OSProtocolHandlerExists( const char* aProtocolScheme, bool* aHandlerExists) { @@ -1235,7 +1234,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth nsCOMPtr handlerSvc = do_GetService(NS_HANDLERSERVICE_CONTRACTID, &rv); if (NS_SUCCEEDED(rv) && handlerSvc) { -@@ -1044,17 +1044,17 @@ nsresult nsOSHelperAppService::OSProtoco +@@ -1043,17 +1043,17 @@ nsresult nsOSHelperAppService::OSProtoco } return rv; @@ -1254,7 +1253,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth NS_IMETHODIMP nsOSHelperAppService::IsCurrentAppOSDefaultForProtocol( const nsACString& aScheme, bool* _retval) { -@@ -1141,17 +1141,17 @@ already_AddRefed nsOSHel +@@ -1140,17 +1140,17 @@ already_AddRefed nsOSHel nsresult rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType, minorType, mime_types_description, true); @@ -1273,7 +1272,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt), majorType, minorType, mime_types_description, false); -@@ -1253,17 +1253,17 @@ already_AddRefed nsOSHel +@@ -1252,17 +1252,17 @@ already_AddRefed nsOSHel // Now look up our extensions nsAutoString extensions, mime_types_description; @@ -1333,7 +1332,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp #include "nsGtkUtils.h" #include "nsIFileURL.h" #include "nsIGIOService.h" -@@ -20,16 +21,17 @@ +@@ -20,16 +21,18 @@ #include "nsArrayEnumerator.h" #include "nsMemory.h" #include "nsEnumeratorUtils.h" @@ -1343,6 +1342,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp #include "nsFilePicker.h" +#include "nsKDEUtils.h" ++#include "nsURLHelper.h" using namespace mozilla; @@ -1351,7 +1351,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp #define MAX_PREVIEW_SOURCE_SIZE 4096 nsIFile* nsFilePicker::mPrevDisplayDirectory = nullptr; -@@ -227,17 +229,19 @@ nsFilePicker::AppendFilters(int32_t aFil +@@ -227,17 +230,19 @@ nsFilePicker::AppendFilters(int32_t aFil mAllowURLs = !!(aFilterMask & filterAllowURLs); return nsBaseFilePicker::AppendFilters(aFilterMask); } @@ -1372,7 +1372,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp mFilters.AppendElement(filter); mFilterNames.AppendElement(name); -@@ -337,16 +341,39 @@ nsresult nsFilePicker::Show(int16_t* aRe +@@ -337,16 +342,39 @@ nsresult nsFilePicker::Show(int16_t* aRe return NS_OK; } @@ -1412,7 +1412,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp GtkFileChooserAction action = GetGtkFileChooserAction(mMode); const gchar* accept_button; -@@ -571,16 +598,240 @@ void nsFilePicker::Done(void* file_choos +@@ -571,16 +599,244 @@ void nsFilePicker::Done(void* file_choos mCallback->Done(result); mCallback = nullptr; } else { @@ -1578,8 +1578,12 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp + mFileURL = output[ 0 ]; + else // GetFile() actually requires it to be url even for local files :-/ + { -+ mFileURL = nsCString( "file://" ); -+ mFileURL.Append( output[ 0 ] ); ++ nsCOMPtr localfile; ++ nsresult rv = NS_NewNativeLocalFile( output[ 0 ], ++ PR_FALSE, ++ getter_AddRefs(localfile)); ++ if (NS_SUCCEEDED(rv)) ++ rv = net_GetURLSpecFromActualFile(localfile, mFileURL); + } + } + // Remember last used directory. diff --git a/tar_stamps b/tar_stamps index cce2ffee..93ab297f 100644 --- a/tar_stamps +++ b/tar_stamps @@ -1,11 +1,11 @@ PRODUCT="firefox" CHANNEL="release" -VERSION="75.0" +VERSION="76.0" VERSION_SUFFIX="" -PREV_VERSION="75.0" +PREV_VERSION="76.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="6200ca9b300670ec069cdbf6e4f05e6a0bca46f1" -RELEASE_TIMESTAMP="20200403170909" +RELEASE_TAG="cf326ad0bb298ee24b1abd9b1cb6513af4fa04ba" +RELEASE_TIMESTAMP="20200429185419"