# HG changeset patch # User Wolfgang Rosenauer # Date 1598383642 -7200 # Node ID edb0ebe8cccce3ddba58bf87ae5e0e688a50608f # Parent a9aa543a508ac21f624380ca4282bea17c79cf5e Firefox 80.0 diff -r a9aa543a508a -r edb0ebe8cccc MozillaFirefox/MozillaFirefox.changes --- a/MozillaFirefox/MozillaFirefox.changes Sat Aug 22 08:33:39 2020 +0200 +++ b/MozillaFirefox/MozillaFirefox.changes Tue Aug 25 21:27:22 2020 +0200 @@ -1,4 +1,46 @@ ------------------------------------------------------------------- +Sat Aug 22 06:52:01 UTC 2020 - Wolfgang Rosenauer + +- Mozilla Firefox 80.0 + MFSA 2020-36 (bsc#1175686) + * CVE-2020-15663 (bmo#1643199) + Downgrade attack on the Mozilla Maintenance Service could + have resulted in escalation of privilege + * CVE-2020-15664 (bmo#1658214) + Attacker-induced prompt for extension installation + * CVE-2020-12401 (bmo#1631573) + Timing-attack on ECDSA signature generation + * CVE-2020-6829 (bmo#1631583) + P-384 and P-521 vulnerable to an electro-magnetic side + channel attack on signature generation + * CVE-2020-12400 (bmo#1623116) + P-384 and P-521 vulnerable to a side channel attack on + modular inversion + * CVE-2020-15665 (bmo#1651636) + Address bar not reset when choosing to stay on a page after + the beforeunload dialog is shown + * CVE-2020-15666 (bmo#1450853) + MediaError message property leaks cross-origin response + status + * CVE-2020-15667 (bmo#1653371) + Heap overflow when processing an update file + * CVE-2020-15668 (bmo#1651520) + Data Race when reading certificate information + * CVE-2020-15670 (bmo#1651001, bmo#1651449, bmo#1653626, + bmo#1656957) + Memory safety bugs fixed in Firefox 80 and Firefox ESR 78.2 +- requires + * NSPR 4.27 + * NSS 3.55 +- added mozilla-system-nspr.patch (bmo#1661096) +- exclude ga-IE locale as it's failing to build +- rollback parallelize locale build because it breaks bookmarks + (boo#1167976) +- preserve original default bookmark file during langpack build + (boo#1167976) +- add some ccache output during build + +------------------------------------------------------------------- Thu Aug 20 13:07:33 UTC 2020 - Martin Liška - Use new memoryperjob _constraints instead of %limit_build macro. diff -r a9aa543a508a -r edb0ebe8cccc MozillaFirefox/MozillaFirefox.spec --- a/MozillaFirefox/MozillaFirefox.spec Sat Aug 22 08:33:39 2020 +0200 +++ b/MozillaFirefox/MozillaFirefox.spec Tue Aug 25 21:27:22 2020 +0200 @@ -25,9 +25,9 @@ # orig_suffix b3 # major 69 # mainver %major.99 -%define major 79 +%define major 80 %define mainver %major.0 -%define orig_version 79.0 +%define orig_version 80.0 %define orig_suffix %{nil} %define update_channel release %define branding 1 @@ -95,8 +95,8 @@ BuildRequires: libiw-devel BuildRequires: libproxy-devel BuildRequires: makeinfo -BuildRequires: mozilla-nspr-devel >= 4.26 -BuildRequires: mozilla-nss-devel >= 3.54 +BuildRequires: mozilla-nspr-devel >= 4.27 +BuildRequires: mozilla-nss-devel >= 3.55 BuildRequires: nasm >= 2.14 BuildRequires: nodejs10 >= 10.21.0 BuildRequires: python-devel @@ -208,6 +208,7 @@ Patch26: mozilla-bmo1626236.patch Patch27: mozilla-s390x-skia-gradient.patch Patch28: mozilla-libavcodec58_91.patch +Patch29: mozilla-system-nspr.patch # Firefox/browser Patch101: firefox-kde.patch Patch102: firefox-branded-icons.patch @@ -350,6 +351,7 @@ %patch26 -p1 %patch27 -p1 %patch28 -p1 +%patch29 -p1 # Firefox %patch101 -p1 %patch102 -p1 @@ -518,6 +520,7 @@ ls -l config/external/icu/data rm -f config/external/icu/data/icudt*l.dat %endif +ccache -s %if 0%{?do_profiling} xvfb-run --server-args="-screen 0 1920x1080x24" \ %endif @@ -525,10 +528,19 @@ # build additional locales %if %localize +# The file obj/browser/locales/bookmarks.html will be overwritten by each langpack-build with the current translation +# Thus we save here the original, to restore it afterwards, so that the default installation will not have zh-TW +# bookmarks +# See also https://bugzilla.opensuse.org/show_bug.cgi?id=1167976 +cp ../obj/browser/locales/bookmarks.html ../obj/browser/locales/bookmarks.html_ORIG + mkdir -p %{buildroot}%{progdir}/browser/extensions truncate -s 0 %{_tmppath}/translations.{common,other} -sed -r '/^(ja-JP-mac|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig_version}/browser/locales/shipped-locales \ - | xargs -n 1 -P 0 -I {} /bin/sh -c ' +# Adding "-P 0" would give us parallel builds of langpacks. Unfortunately, mach currently doesn't support +# building them in parallel. If we do, we get race-conditions and have mixed languages in the langpacks. +# See https://bugzilla.suse.com/show_bug.cgi?id=1173986 +sed -r '/^(ja-JP-mac|ga-IE|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig_version}/browser/locales/shipped-locales \ + | xargs -n 1 -I {} /bin/sh -c ' locale=$1 ./mach build langpack-$locale cp -L ../obj/dist/linux-*/xpi/firefox-%{orig_version}.$locale.langpack.xpi \ @@ -545,8 +557,12 @@ echo %{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org.xpi \ >> %{_tmppath}/translations.$_l10ntarget ' -- {} + +# Restoring the original bookmarksfile +cp ../obj/browser/locales/bookmarks.html_ORIG ../obj/browser/locales/bookmarks.html %endif +ccache -s %endif # only_print_mozconfig %install diff -r a9aa543a508a -r edb0ebe8cccc MozillaFirefox/mozilla-system-nspr.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/MozillaFirefox/mozilla-system-nspr.patch Tue Aug 25 21:27:22 2020 +0200 @@ -0,0 +1,1 @@ +../mozilla-system-nspr.patch \ No newline at end of file diff -r a9aa543a508a -r edb0ebe8cccc MozillaFirefox/tar_stamps --- a/MozillaFirefox/tar_stamps Sat Aug 22 08:33:39 2020 +0200 +++ b/MozillaFirefox/tar_stamps Tue Aug 25 21:27:22 2020 +0200 @@ -1,11 +1,11 @@ PRODUCT="firefox" CHANNEL="release" -VERSION="79.0" +VERSION="80.0" VERSION_SUFFIX="" -PREV_VERSION="78.0.2" +PREV_VERSION="79.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="df3ed76cf46b23c9b658cd5be4cdd4162d86f736" -RELEASE_TIMESTAMP="20200720193547" +RELEASE_TAG="bd5d1f49975deb730064a16b3079edb53c4a5f84" +RELEASE_TIMESTAMP="20200818235255" diff -r a9aa543a508a -r edb0ebe8cccc firefox-branded-icons.patch --- a/firefox-branded-icons.patch Sat Aug 22 08:33:39 2020 +0200 +++ b/firefox-branded-icons.patch Tue Aug 25 21:27:22 2020 +0200 @@ -1,6 +1,6 @@ # HG changeset patch # Parent e0751ad74e835e80041a61ea00c2a63bf6fbe2de -# Parent 91064bb25b378c1fdcc2d99a89aeaf5e821b1689 +# Parent fe8ed2b997914bef9446d854a4c189fb69394bac diff --git a/browser/branding/branding-common.mozbuild b/browser/branding/branding-common.mozbuild --- a/browser/branding/branding-common.mozbuild @@ -24,9 +24,9 @@ diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in --- a/browser/installer/package-manifest.in +++ b/browser/installer/package-manifest.in -@@ -249,20 +249,23 @@ - @RESPATH@/browser/chrome/pdfjs.manifest - @RESPATH@/browser/chrome/pdfjs/* +@@ -252,20 +252,23 @@ + @RESPATH@/chrome/pdfjs.manifest + @RESPATH@/chrome/pdfjs/* @RESPATH@/chrome/toolkit@JAREXT@ @RESPATH@/chrome/toolkit.manifest @RESPATH@/chrome/recording.manifest diff -r a9aa543a508a -r edb0ebe8cccc firefox-kde.patch --- a/firefox-kde.patch Sat Aug 22 08:33:39 2020 +0200 +++ b/firefox-kde.patch Tue Aug 25 21:27:22 2020 +0200 @@ -3,7 +3,7 @@ # Date 1559300151 -7200 # Fri May 31 12:55:51 2019 +0200 # Node ID 54d41b0033b8d649d842a1f862c6fed8b9874dec -# Parent 0fd58e0df883086574263e0881e1503cf110562a +# Parent 3804871eac4171b99e9049dbc881b5304b5ac207 How to apply this patch: 1. Import and apply it 2. cp browser/base/content/browser.xul browser/base/content/browser-kde.xul @@ -14,7 +14,7 @@ diff --git a/browser/components/preferences/main.js b/browser/components/preferences/main.js --- a/browser/components/preferences/main.js +++ b/browser/components/preferences/main.js -@@ -336,16 +336,23 @@ var gMainPane = { +@@ -335,16 +335,23 @@ var gMainPane = { }, backoffTimes[this._backoffIndex + 1 < backoffTimes.length ? this._backoffIndex++ : backoffTimes.length - 1]); }; @@ -38,7 +38,7 @@ ); let performanceSettingsUrl = Services.urlFormatter.formatURLPref("app.support.baseURL") + -@@ -1301,16 +1308,27 @@ var gMainPane = { +@@ -1291,16 +1298,27 @@ var gMainPane = { this._backoffIndex = 0; let shellSvc = getShellService(); @@ -139,7 +139,7 @@ + if (!str) + return NS_ERROR_FAILURE; + -+ str->SetData( NS_LITERAL_CSTRING( "ISDEFAULTBROWSER" )); ++ str->SetData("ISDEFAULTBROWSER"_ns); + command->AppendElement( str ); + + if( nsKDEUtils::command( command )) @@ -160,10 +160,10 @@ + if (!cmdstr || !paramstr) + return NS_ERROR_FAILURE; + -+ cmdstr->SetData( NS_LITERAL_CSTRING( "SETDEFAULTBROWSER" )); ++ cmdstr->SetData("SETDEFAULTBROWSER"_ns); + command->AppendElement( cmdstr ); + -+ paramstr->SetData( aClaimAllTypes ? NS_LITERAL_CSTRING( "ALLTYPES" ) : NS_LITERAL_CSTRING( "NORMAL" )); ++ paramstr->SetData( aClaimAllTypes ? "ALLTYPES"_ns : "NORMAL"_ns ); + command->AppendElement( paramstr ); + + return nsKDEUtils::command( command ) ? NS_OK : NS_ERROR_FAILURE; diff -r a9aa543a508a -r edb0ebe8cccc mozilla-kde.patch --- a/mozilla-kde.patch Sat Aug 22 08:33:39 2020 +0200 +++ b/mozilla-kde.patch Tue Aug 25 21:27:22 2020 +0200 @@ -3,7 +3,7 @@ # Date 1559294891 -7200 # Fri May 31 11:28:11 2019 +0200 # Node ID c2aa7198fb925e7fde96abf65b6f68b9b755f112 -# Parent 43647626f7204e312a4e38cac0414a461b06667f +# Parent a22a4c4e41107a0809c33a83e9d14916738c5a82 Description: Add KDE integration to Firefox (toolkit parts) Author: Wolfgang Rosenauer Author: Lubos Lunak @@ -31,7 +31,7 @@ #ifdef MOZ_MEMORY # include "mozmemory.h" #endif -@@ -4570,25 +4571,37 @@ nsresult Preferences::InitInitialObjects +@@ -4530,25 +4531,37 @@ nsresult Preferences::InitInitialObjects // application pref files for backwards compatibility. static const char* specialFiles[] = { #if defined(XP_MACOSX) @@ -69,7 +69,7 @@ // Load jar:$app/omni.jar!/defaults/preferences/*.js // or jar:$gre/omni.jar!/defaults/preferences/*.js. -@@ -4634,17 +4647,17 @@ nsresult Preferences::InitInitialObjects +@@ -4594,17 +4607,17 @@ nsresult Preferences::InitInitialObjects } nsCOMPtr path = do_QueryInterface(elem); @@ -91,7 +91,7 @@ diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build --- a/modules/libpref/moz.build +++ b/modules/libpref/moz.build -@@ -117,16 +117,20 @@ EXPORTS.mozilla += [ +@@ -118,16 +118,20 @@ EXPORTS.mozilla += [ ] EXPORTS.mozilla += sorted(['!' + g for g in gen_h]) @@ -157,7 +157,7 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build --- a/toolkit/components/downloads/moz.build +++ b/toolkit/components/downloads/moz.build -@@ -46,10 +46,14 @@ XPCOM_MANIFESTS += [ +@@ -45,10 +45,14 @@ XPCOM_MANIFESTS += [ if CONFIG['MOZ_PLACES']: EXTRA_JS_MODULES += [ @@ -302,7 +302,7 @@ nsUnixSystemProxySettings::GetMainThreadOnly(bool* aMainThreadOnly) { // dbus prevents us from being threadsafe, but this routine should not block // anyhow -@@ -384,21 +387,50 @@ nsresult nsUnixSystemProxySettings::GetP +@@ -381,21 +384,50 @@ nsresult nsUnixSystemProxySettings::GetP return NS_OK; } @@ -338,7 +338,7 @@ + url += nsPrintfCString("%d", aPort); + } + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "GETPROXY" )); ++ command.AppendElement( "GETPROXY"_ns ); + command.AppendElement( url ); + nsTArray result; + if( !nsKDEUtils::command( command, &result ) || result.Length() != 1 ) @@ -454,8 +454,8 @@ +static bool getKdeSupport() + { + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "CHECK" )); -+ command.AppendElement( NS_LITERAL_CSTRING( MAKE_STR( KMOZILLAHELPER_VERSION ))); ++ command.AppendElement( "CHECK"_ns ); ++ command.AppendElement( "KMOZILLAHELPER_VERSION"_ns ); + bool kde = nsKDEUtils::command( command ); +#ifdef DEBUG_KDE + fprintf( stderr, "KDE RUNNING %d\n", kde ); @@ -991,7 +991,7 @@ +nsKDERegistry::HandlerExists(const char *aProtocolScheme) +{ + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "HANDLEREXISTS" )); ++ command.AppendElement( "HANDLEREXISTS"_ns ); + command.AppendElement( nsAutoCString( aProtocolScheme )); + return nsKDEUtils::command( command ); +} @@ -1000,7 +1000,7 @@ +nsKDERegistry::LoadURL(nsIURI *aURL) +{ + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "OPEN" )); ++ command.AppendElement( "OPEN"_ns ); + nsCString url; + aURL->GetSpec( url ); + command.AppendElement( url ); @@ -1016,7 +1016,7 @@ + nsAString& aDesc) +{ + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "GETAPPDESCFORSCHEME" )); ++ command.AppendElement( "GETAPPDESCFORSCHEME"_ns ); + command.AppendElement( aScheme ); + nsTArray output; + if( nsKDEUtils::command( command, &output ) && output.Length() == 1 ) @@ -1029,7 +1029,7 @@ +{ + NS_ASSERTION(aFileExt[0] != '.', "aFileExt shouldn't start with a dot"); + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "GETFROMEXTENSION" )); ++ command.AppendElement( "GETFROMEXTENSION"_ns ); + command.AppendElement( aFileExt ); + return GetFromHelper( command ); +} @@ -1038,7 +1038,7 @@ +nsKDERegistry::GetFromType(const nsACString& aMIMEType) +{ + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "GETFROMTYPE" )); ++ command.AppendElement( "GETFROMTYPE"_ns ); + command.AppendElement( aMIMEType ); + return GetFromHelper( command ); +} @@ -1171,9 +1171,9 @@ + bool supports; + if( NS_SUCCEEDED( GetHasDefaultHandler( &supports )) && supports ) { + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "OPEN" )); ++ command.AppendElement( "OPEN"_ns ); + command.AppendElement( nativePath ); -+ command.AppendElement( NS_LITERAL_CSTRING( "MIMETYPE" )); ++ command.AppendElement( "MIMETYPE"_ns ); + command.AppendElement( mSchemeOrType ); + if( nsKDEUtils::command( command )) + return NS_OK; @@ -1214,7 +1214,7 @@ #include "nsIFileStreams.h" #include "nsILineInputStream.h" #include "nsIFile.h" -@@ -1022,17 +1022,17 @@ nsresult nsOSHelperAppService::GetHandle +@@ -1019,17 +1019,17 @@ nsresult nsOSHelperAppService::GetHandle nsresult nsOSHelperAppService::OSProtocolHandlerExists( const char* aProtocolScheme, bool* aHandlerExists) { @@ -1233,7 +1233,7 @@ nsCOMPtr handlerSvc = do_GetService(NS_HANDLERSERVICE_CONTRACTID, &rv); if (NS_SUCCEEDED(rv) && handlerSvc) { -@@ -1042,17 +1042,17 @@ nsresult nsOSHelperAppService::OSProtoco +@@ -1039,17 +1039,17 @@ nsresult nsOSHelperAppService::OSProtoco } return rv; @@ -1252,7 +1252,7 @@ NS_IMETHODIMP nsOSHelperAppService::IsCurrentAppOSDefaultForProtocol( const nsACString& aScheme, bool* _retval) { -@@ -1139,17 +1139,17 @@ already_AddRefed nsOSHel +@@ -1136,17 +1136,17 @@ already_AddRefed 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); -@@ -1251,17 +1251,17 @@ already_AddRefed nsOSHel +@@ -1247,17 +1247,17 @@ already_AddRefed nsOSHel // Now look up our extensions nsAutoString extensions, mime_types_description; @@ -1294,7 +1294,6 @@ --- a/widget/gtk/moz.build +++ b/widget/gtk/moz.build @@ -133,16 +133,17 @@ include('/ipc/chromium/chromium-config.m - FINAL_LIBRARY = 'xul' LOCAL_INCLUDES += [ @@ -1302,6 +1301,7 @@ '/layout/generic', '/layout/xul', '/other-licenses/atk-1.0', + '/third_party/cups/include', + '/toolkit/xre', '/widget', '/widget/headless', @@ -1534,10 +1534,10 @@ + } + command.AppendElement( title ); + if( mMode == nsIFilePicker::modeOpenMultiple ) -+ command.AppendElement( NS_LITERAL_CSTRING( "MULTIPLE" )); ++ command.AppendElement( "MULTIPLE"_ns ); + if( PRInt32 xid = windowToXid( mParentWidget )) + { -+ command.AppendElement( NS_LITERAL_CSTRING( "PARENT" )); ++ command.AppendElement( "PARENT"_ns ); + nsAutoCString parent; + parent.AppendInt( xid ); + command.AppendElement( parent ); @@ -1625,11 +1625,11 @@ + title.Adopt(ToNewUTF8String(mTitle)); + + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING( "APPSDIALOG" )); ++ command.AppendElement( "APPSDIALOG"_ns ); + command.AppendElement( title ); + if( PRInt32 xid = windowToXid( mParentWidget )) + { -+ command.AppendElement( NS_LITERAL_CSTRING( "PARENT" )); ++ command.AppendElement( "PARENT"_ns ); + nsAutoCString parent; + parent.AppendInt( xid ); + command.AppendElement( parent ); @@ -1703,25 +1703,25 @@ int argc; bool ischrome; -@@ -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"); - NS_NAMED_LITERAL_STRING(kAppVersion, "appversion"); - NS_NAMED_LITERAL_STRING(kGeckoVersion, "platformversion"); - NS_NAMED_LITERAL_STRING(kOs, "os"); - NS_NAMED_LITERAL_STRING(kOsVersion, "osversion"); - NS_NAMED_LITERAL_STRING(kABI, "abi"); -+ NS_NAMED_LITERAL_STRING(kDesktop, "desktop"); - NS_NAMED_LITERAL_STRING(kProcess, "process"); +@@ -393,16 +394,17 @@ void ParseManifest(NSLocationType aType, + constexpr auto kRemoteEnabled = u"remoteenabled"_ns; + constexpr auto kRemoteRequired = u"remoterequired"_ns; + constexpr auto kApplication = u"application"_ns; + constexpr auto kAppVersion = u"appversion"_ns; + constexpr auto kGeckoVersion = u"platformversion"_ns; + constexpr auto kOs = u"os"_ns; + constexpr auto kOsVersion = u"osversion"_ns; + constexpr auto kABI = u"abi"_ns; ++ constexpr auto kDesktop = u"desktop"_ns; + constexpr auto kProcess = u"process"_ns; #if defined(MOZ_WIDGET_ANDROID) - NS_NAMED_LITERAL_STRING(kTablet, "tablet"); + constexpr auto kTablet = u"tablet"_ns; #endif - NS_NAMED_LITERAL_STRING(kMain, "main"); - NS_NAMED_LITERAL_STRING(kContent, "content"); + constexpr auto kMain = u"main"_ns; + constexpr auto kContent = u"content"_ns; -@@ -449,39 +451,44 @@ void ParseManifest(NSLocationType aType, +@@ -448,39 +450,44 @@ void ParseManifest(NSLocationType aType, CopyUTF8toUTF16(s, abi); abi.Insert(char16_t('_'), 0); abi.Insert(osTarget, 0); @@ -1739,17 +1739,17 @@ nsTextFormatter::ssprintf(osVersion, u"%ld.%ld", info.dwMajorVersion, info.dwMinorVersion); } -+ desktop = NS_LITERAL_STRING("win"); ++ desktop = u"win"_ns; # pragma warning(pop) #elif defined(MOZ_WIDGET_COCOA) SInt32 majorVersion = nsCocoaFeatures::macOSVersionMajor(); SInt32 minorVersion = nsCocoaFeatures::macOSVersionMinor(); nsTextFormatter::ssprintf(osVersion, u"%ld.%ld", majorVersion, minorVersion); -+ desktop = NS_LITERAL_STRING("macosx"); ++ desktop = u"macosx"_ns); #elif defined(MOZ_WIDGET_GTK) nsTextFormatter::ssprintf(osVersion, u"%ld.%ld", gtk_major_version, gtk_minor_version); -+ desktop = nsKDEUtils::kdeSession() ? NS_LITERAL_STRING("kde") : NS_LITERAL_STRING("gnome"); ++ desktop = nsKDEUtils::kdeSession() ? u"kde"_ns : u"gnome"_ns; #elif defined(MOZ_WIDGET_ANDROID) bool isTablet = false; if (mozilla::AndroidBridge::Bridge()) { @@ -1757,7 +1757,7 @@ "android/os/Build$VERSION", "RELEASE", osVersion); isTablet = java::GeckoAppShell::IsTablet(); } -+ desktop = NS_LITERAL_STRING("android"); ++ desktop = u"android"_ns; #endif if (XRE_IsContentProcess()) { @@ -1766,7 +1766,7 @@ process = kMain; } -@@ -568,25 +575,27 @@ void ParseManifest(NSLocationType aType, +@@ -567,25 +574,27 @@ void ParseManifest(NSLocationType aType, TriState stOsVersion = eUnspecified; TriState stOs = eUnspecified; TriState stABI = eUnspecified; @@ -1794,7 +1794,7 @@ continue; } -@@ -623,17 +632,17 @@ void ParseManifest(NSLocationType aType, +@@ -622,17 +631,17 @@ void ParseManifest(NSLocationType aType, } LogMessageWithContext( @@ -1907,7 +1907,7 @@ #endif + if(nsKDEUtils::kdeSupport()) { + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING("REVEAL") ); ++ command.AppendElement( "REVEAL"_ns ); + command.AppendElement( mPath ); + return nsKDEUtils::command( command ) ? NS_OK : NS_ERROR_FAILURE; + } @@ -1927,7 +1927,7 @@ #ifdef MOZ_WIDGET_GTK + if( nsKDEUtils::kdeSupport()) { + nsTArray command; -+ command.AppendElement( NS_LITERAL_CSTRING("OPEN") ); ++ command.AppendElement( "OPEN"_ns ); + command.AppendElement( mPath ); + return nsKDEUtils::command( command ) ? NS_OK : NS_ERROR_FAILURE; + } diff -r a9aa543a508a -r edb0ebe8cccc mozilla-nongnome-proxies.patch --- a/mozilla-nongnome-proxies.patch Sat Aug 22 08:33:39 2020 +0200 +++ b/mozilla-nongnome-proxies.patch Tue Aug 25 21:27:22 2020 +0200 @@ -3,7 +3,7 @@ # Date 1558442915 -7200 # Tue May 21 14:48:35 2019 +0200 # Node ID 6bcf2dfebc1ea2aa34e5cc61152709fc8e409dc5 -# Parent dc1684693eed684bdafeff0ad78d4f6d288fcae1 +# Parent bd5d1f49975deb730064a16b3079edb53c4a5f84 Do not use gconf for proxy settings if not running within Gnome Index: toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp =================================================================== @@ -13,7 +13,7 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp --- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp +++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp -@@ -49,21 +49,24 @@ NS_IMETHODIMP +@@ -49,20 +49,24 @@ NS_IMETHODIMP nsUnixSystemProxySettings::GetMainThreadOnly(bool* aMainThreadOnly) { // dbus prevents us from being threadsafe, but this routine should not block // anyhow @@ -24,15 +24,14 @@ void nsUnixSystemProxySettings::Init() { - mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID); - if (mGSettings) { -- mGSettings->GetCollectionForSchema( -- NS_LITERAL_CSTRING("org.gnome.system.proxy"), -- getter_AddRefs(mProxySettings)); +- mGSettings->GetCollectionForSchema("org.gnome.system.proxy"_ns, +- getter_AddRefs(mProxySettings)); + const char* sessionType = PR_GetEnv("DESKTOP_SESSION"); + if (sessionType && !strcmp(sessionType, "gnome")) { + mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID); + if (mGSettings) { + mGSettings->GetCollectionForSchema( -+ NS_LITERAL_CSTRING("org.gnome.system.proxy"), ++ "org.gnome.system.proxy"_ns, + getter_AddRefs(mProxySettings)); + } } @@ -42,4 +41,4 @@ if (mProxySettings) { nsCString proxyMode; // Check if mode is auto - nsresult rv = + nsresult rv = mProxySettings->GetString("mode"_ns, proxyMode); diff -r a9aa543a508a -r edb0ebe8cccc mozilla-system-nspr.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mozilla-system-nspr.patch Tue Aug 25 21:27:22 2020 +0200 @@ -0,0 +1,52 @@ +# HG changeset patch +# User Wolfgang Rosenauer +# Parent 3804871eac4171b99e9049dbc881b5304b5ac207 + +diff --git a/dom/system/IOUtils.cpp b/dom/system/IOUtils.cpp +--- a/dom/system/IOUtils.cpp ++++ b/dom/system/IOUtils.cpp +@@ -9,19 +9,19 @@ + #include "mozilla/dom/IOUtils.h" + #include "mozilla/dom/Promise.h" + #include "mozilla/ErrorNames.h" + #include "mozilla/Result.h" + #include "mozilla/ResultExtensions.h" + #include "mozilla/Services.h" + #include "mozilla/Span.h" + #include "mozilla/TextUtils.h" +-#include "nspr/prio.h" +-#include "nspr/private/pprio.h" +-#include "nspr/prtypes.h" ++#include "prio.h" ++#include "private/pprio.h" ++#include "prtypes.h" + #include "nsDirectoryServiceDefs.h" + #include "nsIFile.h" + #include "nsIGlobalObject.h" + #include "nsNativeCharsetUtils.h" + #include "nsReadableUtils.h" + #include "nsString.h" + #include "nsThreadManager.h" + #include "SpecialSystemDirectory.h" +diff --git a/dom/system/IOUtils.h b/dom/system/IOUtils.h +--- a/dom/system/IOUtils.h ++++ b/dom/system/IOUtils.h +@@ -9,17 +9,17 @@ + + #include "mozilla/AlreadyAddRefed.h" + #include "mozilla/DataMutex.h" + #include "mozilla/dom/BindingDeclarations.h" + #include "mozilla/dom/IOUtilsBinding.h" + #include "mozilla/dom/TypedArray.h" + #include "mozilla/ErrorResult.h" + #include "mozilla/MozPromise.h" +-#include "nspr/prio.h" ++#include "prio.h" + #include "nsIAsyncShutdown.h" + #include "nsISerialEventTarget.h" + #include "nsLocalFile.h" + + namespace mozilla { + + /** + * Utility class to be used with |UniquePtr| to automatically close NSPR file diff -r a9aa543a508a -r edb0ebe8cccc series --- a/series Sat Aug 22 08:33:39 2020 +0200 +++ b/series Tue Aug 25 21:27:22 2020 +0200 @@ -25,6 +25,7 @@ mozilla-bmo1626236.patch mozilla-s390x-skia-gradient.patch mozilla-libavcodec58_91.patch +mozilla-system-nspr.patch # Firefox patches firefox-kde.patch