diff --git a/MozillaFirefox.changes b/MozillaFirefox.changes index 4093b18..13fc6c6 100644 --- a/MozillaFirefox.changes +++ b/MozillaFirefox.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +Sun Mar 6 19:52:13 UTC 2016 - wr@rosenauer.org + +- update to Firefox 45.0 + * requires NSPR 4.12 / NSS 3.21.1 + * Instant browser tab sharing through Hello + * Synced Tabs button in button bar + * Tabs synced via Firefox Accounts from other devices are now shown + in dropdown area of Awesome Bar when searching + * Introduce a new preference (network.dns.blockDotOnion) to allow + blocking .onion at the DNS level + * Tab Groups (Panorama) feature removed + ------------------------------------------------------------------- Sat Mar 5 15:27:00 UTC 2016 - olaf@aepfle.de diff --git a/MozillaFirefox.spec b/MozillaFirefox.spec index a061815..f42f2dd 100644 --- a/MozillaFirefox.spec +++ b/MozillaFirefox.spec @@ -18,10 +18,10 @@ # changed with every update -%define major 44 -%define mainver %major.0.2 +%define major 45 +%define mainver %major.0 %define update_channel release -%define releasedate 2016021000 +%define releasedate 2016030500 # general build definitions %if "%{update_channel}" != "aurora" @@ -77,8 +77,8 @@ BuildRequires: libiw-devel BuildRequires: libnotify-devel BuildRequires: libproxy-devel BuildRequires: makeinfo -BuildRequires: mozilla-nspr-devel >= 4.11 -BuildRequires: mozilla-nss-devel >= 3.21 +BuildRequires: mozilla-nspr-devel >= 4.12 +BuildRequires: mozilla-nss-devel >= 3.21.1 BuildRequires: nss-shared-helper-devel BuildRequires: python-devel BuildRequires: startup-notification-devel @@ -562,15 +562,15 @@ exit 0 %dir %{progdir}/browser/extensions/ %{progdir}/browser/components/ %{progdir}/browser/defaults +%{progdir}/browser/features/ %{progdir}/browser/icons/ %{progdir}/browser/chrome/icons -%{progdir}/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd} +%{progdir}/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi %{progdir}/browser/blocklist.xml %{progdir}/browser/chrome.manifest %{progdir}/browser/omni.ja %dir %{progdir}/distribution/ %{progdir}/distribution/extensions/ -%{progdir}/components/ %{progdir}/defaults/ %{progdir}/dictionaries/ %if 0%{?suse_version} > 1320 @@ -589,7 +589,6 @@ exit 0 %{progdir}/platform.ini %{progdir}/plugin-container %{progdir}/webapprt-stub -%{progdir}/chrome.manifest %if %crashreporter %{progdir}/crashreporter %{progdir}/crashreporter.ini diff --git a/compare-locales.tar.xz b/compare-locales.tar.xz index ca6a3ac..4f039ad 100644 --- a/compare-locales.tar.xz +++ b/compare-locales.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f9158e2d2e3ef9a54e625ebc3d5d25b27f6031095a5bf399435988277a63b1b2 -size 28372 +oid sha256:e0758abf226a86c06c7c793ab5214f7c6c01f26fce59ffc5803d5b30c31a7556 +size 28400 diff --git a/create-tar.sh b/create-tar.sh index 1da6a5c..900f54c 100644 --- a/create-tar.sh +++ b/create-tar.sh @@ -2,8 +2,8 @@ CHANNEL="release" BRANCH="releases/mozilla-$CHANNEL" -RELEASE_TAG="FIREFOX_44_0_2_RELEASE" -VERSION="44.0.2" +RELEASE_TAG="FIREFOX_45_0_RELEASE" +VERSION="45.0" # mozilla if [ -d mozilla ]; then diff --git a/firefox-44.0.2-source.tar.xz b/firefox-44.0.2-source.tar.xz deleted file mode 100644 index 646a39c..0000000 --- a/firefox-44.0.2-source.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fce1881f439a5769dc9ab080cff0a743b55ada06a24a94c37a13bb2d87f5d579 -size 192330532 diff --git a/firefox-45.0-source.tar.xz b/firefox-45.0-source.tar.xz new file mode 100644 index 0000000..8640193 --- /dev/null +++ b/firefox-45.0-source.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e6dee86eaaa1660abdefcd5a44ecec414b1734e28cb6f6a0924018dd3dc6627 +size 194129856 diff --git a/firefox-branded-icons.patch b/firefox-branded-icons.patch index dea926d..c53fb0d 100644 --- a/firefox-branded-icons.patch +++ b/firefox-branded-icons.patch @@ -1,6 +1,6 @@ # HG changeset patch # Parent e0751ad74e835e80041a61ea00c2a63bf6fbe2de -# Parent e10e9bf6ab3a74655998bd0286d248f5d17a601a +# Parent e3d8efdd7eea96ff7b8a7f6489a082cad72a98d8 diff --git a/browser/app/Makefile.in b/browser/app/Makefile.in --- a/browser/app/Makefile.in @@ -49,7 +49,7 @@ diff --git a/browser/branding/branding-common.mozbuild b/browser/branding/brandi 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 -@@ -670,18 +670,21 @@ +@@ -665,18 +665,21 @@ @RESPATH@/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/icon.png @RESPATH@/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf @RESPATH@/chrome/toolkit@JAREXT@ @@ -64,10 +64,10 @@ diff --git a/browser/installer/package-manifest.in b/browser/installer/package-m @RESPATH@/browser/chrome/icons/default/default48.png +@RESPATH@/browser/chrome/icons/default/default256.png #endif + @RESPATH@/browser/features/* ; [Webide Files] @RESPATH@/browser/chrome/webide@JAREXT@ @RESPATH@/browser/chrome/webide.manifest @RESPATH@/browser/@PREF_DIR@/webide-prefs.js - ; DevTools diff --git a/firefox-kde.patch b/firefox-kde.patch index 32b3694..38865f4 100644 --- a/firefox-kde.patch +++ b/firefox-kde.patch @@ -1,5 +1,5 @@ # HG changeset patch -# Parent 77c3bdc27160dfa96aa4b3288c7f12a72f273967 +# Parent 816422471b9d80e8302d4347d32bc929d0c0dfe7 diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul new file mode 100644 @@ -1259,25 +1259,25 @@ new file mode 100644 diff --git a/browser/base/jar.mn b/browser/base/jar.mn --- a/browser/base/jar.mn +++ b/browser/base/jar.mn -@@ -70,16 +70,18 @@ browser.jar: - content/browser/aboutSocialError.xhtml (content/aboutSocialError.xhtml) - content/browser/aboutProviderDirectory.xhtml (content/aboutProviderDirectory.xhtml) +@@ -71,16 +71,18 @@ browser.jar: content/browser/aboutTabCrashed.css (content/aboutTabCrashed.css) content/browser/aboutTabCrashed.js (content/aboutTabCrashed.js) content/browser/aboutTabCrashed.xhtml (content/aboutTabCrashed.xhtml) + * content/browser/aboutTabGroupsMigration.xhtml (content/aboutTabGroupsMigration.xhtml) + content/browser/aboutTabGroupsMigration.js (content/aboutTabGroupsMigration.js) * content/browser/browser.css (content/browser.css) - * content/browser/browser.js (content/browser.js) + content/browser/browser.js (content/browser.js) * content/browser/browser.xul (content/browser.xul) +* content/browser/browser-kde.xul (content/browser-kde.xul) +% override chrome://browser/content/browser.xul chrome://browser/content/browser-kde.xul desktop=kde - * content/browser/browser-tabPreviews.xml (content/browser-tabPreviews.xml) - * content/browser/chatWindow.xul (content/chatWindow.xul) - content/browser/tab-content.js (content/tab-content.js) - content/browser/content.js (content/content.js) - content/browser/social-content.js (content/social-content.js) - content/browser/defaultthemes/1.footer.jpg (content/defaultthemes/1.footer.jpg) - content/browser/defaultthemes/1.header.jpg (content/defaultthemes/1.header.jpg) - content/browser/defaultthemes/1.icon.jpg (content/defaultthemes/1.icon.jpg) + content/browser/browser-addons.js (content/browser-addons.js) + content/browser/browser-ctrlTab.js (content/browser-ctrlTab.js) + content/browser/browser-customization.js (content/browser-customization.js) + content/browser/browser-data-submission-info-bar.js (content/browser-data-submission-info-bar.js) + content/browser/browser-devedition.js (content/browser-devedition.js) + content/browser/browser-eme.js (content/browser-eme.js) + content/browser/browser-feeds.js (content/browser-feeds.js) + content/browser/browser-fullScreen.js (content/browser-fullScreen.js) diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/nsModule.cpp --- a/browser/components/build/nsModule.cpp +++ b/browser/components/build/nsModule.cpp @@ -1296,11 +1296,11 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns #if defined(XP_WIN) #include "nsIEHistoryEnumerator.h" - #include "nsEdgeReadingListExtractor.h" #endif #include "rdf.h" -@@ -32,18 +32,16 @@ using namespace mozilla::browser; + #include "nsFeedSniffer.h" +@@ -31,18 +31,16 @@ using namespace mozilla::browser; ///////////////////////////////////////////////////////////////////////////// @@ -1315,11 +1315,11 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns #if defined(XP_WIN) NS_GENERIC_FACTORY_CONSTRUCTOR(nsIEHistoryEnumerator) - NS_GENERIC_FACTORY_CONSTRUCTOR(nsEdgeReadingListExtractor) #endif NS_GENERIC_FACTORY_CONSTRUCTOR(nsFeedSniffer) -@@ -63,17 +61,17 @@ NS_DEFINE_NAMED_CID(NS_EDGEREADINGLISTEX + +@@ -60,17 +58,17 @@ NS_DEFINE_NAMED_CID(NS_WINIEHISTORYENUME NS_DEFINE_NAMED_CID(NS_SHELLSERVICE_CID); #endif @@ -1335,13 +1335,13 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns { &kNS_BROWSER_ABOUT_REDIRECTOR_CID, false, nullptr, AboutRedirector::Create }, #if defined(XP_WIN) { &kNS_WINIEHISTORYENUMERATOR_CID, false, nullptr, nsIEHistoryEnumeratorConstructor }, - { &kNS_EDGEREADINGLISTEXTRACTOR_CID, false, nullptr, nsEdgeReadingListExtractorConstructor }, #elif defined(XP_MACOSX) { &kNS_SHELLSERVICE_CID, false, nullptr, nsMacShellServiceConstructor }, + #endif diff --git a/browser/components/preferences/in-content/main.js b/browser/components/preferences/in-content/main.js --- a/browser/components/preferences/in-content/main.js +++ b/browser/components/preferences/in-content/main.js -@@ -14,16 +14,22 @@ var gMainPane = { +@@ -18,16 +18,22 @@ var gMainPane = { init: function () { function setEventListener(aId, aEventType, aCallback) @@ -1364,7 +1364,7 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/compone // when the user will select the default. We refresh here periodically // in case the default changes. On other Windows OS's defaults can also // be set while the prefs are open. -@@ -711,16 +717,27 @@ var gMainPane = { +@@ -720,16 +726,27 @@ var gMainPane = { */ setDefaultBrowser: function() { @@ -1418,7 +1418,7 @@ diff --git a/browser/components/shell/nsKDEShellService.cpp b/browser/components new file mode 100644 --- /dev/null +++ b/browser/components/shell/nsKDEShellService.cpp -@@ -0,0 +1,292 @@ +@@ -0,0 +1,251 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this @@ -1499,47 +1499,6 @@ new file mode 100644 +} + +NS_IMETHODIMP -+nsKDEShellService::GetShouldSkipCheckDefaultBrowser(bool* aResult) -+{ -+ NS_ENSURE_ARG_POINTER(aResult); -+ -+ nsresult rv; -+ nsCOMPtr prefs(do_GetService(NS_PREFSERVICE_CONTRACTID, &rv)); -+ if (NS_FAILED(rv)) { -+ return rv; -+ } -+ -+ rv = prefs->GetBoolPref(PREF_SKIPDEFAULTBROWSERCHECK, aResult); -+ if (NS_FAILED(rv)) { -+ return rv; -+ } -+ if (*aResult) { -+ // Only skip the default browser check once. The next attempt in -+ // a new session should proceed. -+ return prefs->SetBoolPref(PREF_SKIPDEFAULTBROWSERCHECK, false); -+ } -+ -+ int32_t defaultBrowserCheckCount; -+ rv = prefs->GetIntPref(PREF_DEFAULTBROWSERCHECKCOUNT, -+ &defaultBrowserCheckCount); -+ if (NS_FAILED(rv)) { -+ return rv; -+ } -+ if (defaultBrowserCheckCount < 4) { -+ *aResult = false; -+ return prefs->SetIntPref(PREF_DEFAULTBROWSERCHECKCOUNT, -+ defaultBrowserCheckCount + 1); -+ } -+ -+ // Disable the default browser check after three attempts. -+ // Don't modify PREF_CHECKDEFAULTBROWSER since that is a -+ // user-initiated action and it shouldn't get re-enabled -+ // if it has been user disabled. -+ *aResult = true; -+ return rv; -+} -+ -+NS_IMETHODIMP +nsKDEShellService::GetShouldCheckDefaultBrowser(bool* aResult) +{ + // If we've already checked, the browser has been started and this is a @@ -1795,7 +1754,7 @@ new file mode 100644 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 -@@ -709,16 +709,17 @@ +@@ -705,16 +705,17 @@ @RESPATH@/defaults/autoconfig/prefcalls.js @RESPATH@/browser/defaults/profile/prefs.js @RESPATH@/browser/defaults/permissions @@ -1810,6 +1769,6 @@ diff --git a/browser/installer/package-manifest.in b/browser/installer/package-m #ifdef MOZ_SERVICES_NOTIFICATIONS @RESPATH@/defaults/pref/services-notifications.js #endif - #ifdef MOZ_SERVICES_SYNC @RESPATH@/defaults/pref/services-sync.js - #endif + + ; [Layout Engine Resources] diff --git a/l10n-44.0.2.tar.xz b/l10n-44.0.2.tar.xz deleted file mode 100644 index 176368c..0000000 --- a/l10n-44.0.2.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b55f3e44631f505f7179da7ea97087fc3b473398e0c9162276c1386e824234bb -size 42994264 diff --git a/l10n-45.0.tar.xz b/l10n-45.0.tar.xz new file mode 100644 index 0000000..c7cb7fe --- /dev/null +++ b/l10n-45.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:227021a66089ff25b57789d1022bd10cada4a2eb63e2975107c877d31c2309d9 +size 43432208 diff --git a/mozilla-kde.patch b/mozilla-kde.patch index b48beea..af162d7 100644 --- a/mozilla-kde.patch +++ b/mozilla-kde.patch @@ -1,30 +1,11 @@ # HG changeset patch -# Parent d9c9ae52f0338a60d1626d9209248341815e597a +# Parent 797d5f17b080f54439602f107ecaf6b09a0ef5c1 Description: Add KDE integration to Firefox (toolkit parts) Author: Wolfgang Rosenauer Author: Lubos Lunak Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=140751 https://bugzilla.novell.com/show_bug.cgi?id=170055 -diff --git a/modules/libpref/Makefile.in b/modules/libpref/Makefile.in ---- a/modules/libpref/Makefile.in -+++ b/modules/libpref/Makefile.in -@@ -21,13 +21,15 @@ endif - ifdef MOZ_SERVICES_HEALTHREPORT - ifneq (android,$(MOZ_WIDGET_TOOLKIT)) - grepref_files += $(topsrcdir)/services/healthreport/healthreport-prefs.js - else - grepref_files += $(topsrcdir)/mobile/android/chrome/content/healthreport-prefs.js - endif - endif - -+LOCAL_INCLUDES += -I$(topsrcdir)/toolkit/xre -+ - greprefs.js: $(grepref_files) - $(call py_action,preprocessor,$(PREF_PPFLAGS) $(DEFINES) $(ACDEFINES) $(MOZ_DEBUG_DEFINES) $^ -o $@) - - libs:: greprefs.js - $(INSTALL) $^ $(DIST)/bin/ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp --- a/modules/libpref/Preferences.cpp +++ b/modules/libpref/Preferences.cpp @@ -46,7 +27,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp #include "prefread.h" #include "prefapi_private_data.h" -@@ -1148,16 +1149,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char +@@ -1136,16 +1137,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char static nsresult pref_LoadPrefsInDirList(const char *listId) { @@ -81,7 +62,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp return NS_OK; bool hasMore; -@@ -1173,17 +1192,17 @@ static nsresult pref_LoadPrefsInDirList( +@@ -1161,17 +1180,17 @@ static nsresult pref_LoadPrefsInDirList( nsAutoCString leaf; path->GetNativeLeafName(leaf); @@ -100,7 +81,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp { nsZipItemPtr manifest(jarReader, name, true); NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE); -@@ -1277,26 +1296,38 @@ static nsresult pref_InitInitialObjects( +@@ -1265,26 +1284,38 @@ static nsresult pref_InitInitialObjects( /* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */ static const char* specialFiles[] = { #if defined(XP_MACOSX) @@ -139,6 +120,30 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp // or jar:$gre/omni.jar!/defaults/preferences/*.js. RefPtr appJarReader = mozilla::Omnijar::GetReader(mozilla::Omnijar::APP); // GetReader(mozilla::Omnijar::APP) returns null when $app == $gre, in which +diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build +--- a/modules/libpref/moz.build ++++ b/modules/libpref/moz.build +@@ -31,16 +31,20 @@ UNIFIED_SOURCES += [ + 'prefread.cpp', + ] + + # prefapi.cpp cannot be built in unified mode because it uses plarena.h + SOURCES += [ + 'prefapi.cpp', + ] + ++LOCAL_INCLUDES += [ ++ '/toolkit/xre' ++] ++ + include('/ipc/chromium/chromium-config.mozbuild') + + FINAL_LIBRARY = 'xul' + + DEFINES['OS_ARCH'] = CONFIG['OS_ARCH'] + DEFINES['MOZ_WIDGET_TOOLKIT'] = CONFIG['MOZ_WIDGET_TOOLKIT'] + + if CONFIG['GNU_CXX']: diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/chrome/flags.py --- a/python/mozbuild/mozpack/chrome/flags.py +++ b/python/mozbuild/mozpack/chrome/flags.py @@ -226,7 +231,7 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon #include "AndroidBridge.h" #endif -@@ -2714,16 +2718,25 @@ nsDownload::SetState(DownloadState aStat +@@ -2719,16 +2723,25 @@ nsDownload::SetState(DownloadState aStat nsCOMPtr pref(do_GetService(NS_PREFSERVICE_CONTRACTID)); // Master pref to control this function. @@ -252,7 +257,7 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon int64_t goat = PR_Now() - mStartTime; showTaskbarAlert = goat > alertIntervalUSec; -@@ -2754,16 +2767,17 @@ nsDownload::SetState(DownloadState aStat +@@ -2759,16 +2772,17 @@ nsDownload::SetState(DownloadState aStat NS_LITERAL_STRING(DOWNLOAD_MANAGER_ALERT_ICON), title, message, !removeWhenDone, mPrivate ? NS_LITERAL_STRING("private") : NS_LITERAL_STRING("non-private"), @@ -2697,7 +2702,7 @@ new file mode 100644 diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build --- a/uriloader/exthandler/moz.build +++ b/uriloader/exthandler/moz.build -@@ -72,17 +72,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'ui +@@ -75,17 +75,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'ui else: # These files can't be built in unified mode because they redefine LOG. SOURCES += [ @@ -2717,7 +2722,7 @@ diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build 'android/nsExternalSharingAppService.cpp', 'android/nsExternalURLHandlerService.cpp', 'android/nsMIMEInfoAndroid.cpp', -@@ -125,16 +127,17 @@ include('/ipc/chromium/chromium-config.m +@@ -129,16 +131,17 @@ include('/ipc/chromium/chromium-config.m FINAL_LIBRARY = 'xul' @@ -3662,8 +3667,8 @@ diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build --- a/xpcom/components/moz.build +++ b/xpcom/components/moz.build @@ -47,12 +47,13 @@ FINAL_LIBRARY = 'xul' - GENERATED_INCLUDES += ['..'] LOCAL_INCLUDES += [ + '!..', '../base', '../build', '../ds', diff --git a/mozilla-shared-nss-db.patch b/mozilla-shared-nss-db.patch index a1ed667..1a3033b 100644 --- a/mozilla-shared-nss-db.patch +++ b/mozilla-shared-nss-db.patch @@ -7,7 +7,7 @@ References: diff --git a/configure.in b/configure.in --- a/configure.in +++ b/configure.in -@@ -8309,16 +8309,31 @@ if test "$MOZ_ENABLE_SKIA"; then +@@ -8310,16 +8310,31 @@ if test "$MOZ_ENABLE_SKIA"; then AC_DEFINE(USE_SKIA_GPU) AC_SUBST(MOZ_ENABLE_SKIA_GPU) fi @@ -42,7 +42,7 @@ diff --git a/configure.in b/configure.in diff --git a/security/manager/ssl/moz.build b/security/manager/ssl/moz.build --- a/security/manager/ssl/moz.build +++ b/security/manager/ssl/moz.build -@@ -156,16 +156,19 @@ FAIL_ON_WARNINGS = True +@@ -160,16 +160,19 @@ UNIFIED_SOURCES += [ FINAL_LIBRARY = 'xul' LOCAL_INCLUDES += [ @@ -54,8 +54,8 @@ diff --git a/security/manager/ssl/moz.build b/security/manager/ssl/moz.build +CXXFLAGS += sorted(CONFIG['NSSHELPER_CFLAGS']) +OS_LIBS += sorted(CONFIG['NSSHELPER_LIBS']) + - GENERATED_INCLUDES += [ - '/dist/public/nss', + LOCAL_INCLUDES += [ + '!/dist/public/nss', ] if CONFIG['NSS_DISABLE_DBM']: @@ -83,38 +83,38 @@ diff --git a/security/manager/ssl/nsNSSComponent.cpp b/security/manager/ssl/nsNS #include "ExtendedValidation.h" #include "NSSCertDBTrustDomain.h" - #include "mozilla/Telemetry.h" - #include "nsAppDirectoryServiceDefs.h" - #include "nsCertVerificationThread.h" - #include "nsAppDirectoryServiceDefs.h" -@@ -1015,17 +1022,31 @@ nsNSSComponent::InitializeNSS() - return NS_ERROR_NOT_AVAILABLE; + #include "SharedSSLState.h" + #include "mozilla/Preferences.h" + #include "mozilla/PublicSSL.h" + #include "mozilla/Services.h" +@@ -1007,17 +1014,31 @@ nsNSSComponent::InitializeNSS() + return rv; + } } - - SECStatus init_rv = SECFailure; - bool nocertdb = Preferences::GetBool("security.nocertdb", false); + MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("inSafeMode: %u\n", inSafeMode)); if (!nocertdb && !profileStr.IsEmpty()) { // First try to initialize the NSS DB in read/write mode. + // Only load PKCS11 modules if we're not in safe mode. +#ifdef MOZ_ENABLE_NSSHELPER + if (PR_GetEnv("MOZ_XRE_NO_NSSHELPER")) { -+ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false); ++ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false, !inSafeMode); + } else { + uint32_t flags = NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE; + init_rv = ::nsshelp_open_db ("Firefox", profileStr.get(), flags); + + if (init_rv != SECSuccess) { + MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("can not init NSS using nsshelp_open_db in %s\n", profileStr.get())); -+ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false); ++ init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false, !inSafeMode); + } + } +#else - init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false); + init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), false, !inSafeMode); +#endif // If that fails, attempt read-only mode. if (init_rv != SECSuccess) { MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("could not init NSS r/w in %s\n", profileStr.get())); - init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), true); + init_rv = ::mozilla::psm::InitializeNSS(profileStr.get(), true, !inSafeMode); } if (init_rv != SECSuccess) { MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("could not init in r/o either\n")); diff --git a/source-stamp.txt b/source-stamp.txt index 517ee18..c003a74 100644 --- a/source-stamp.txt +++ b/source-stamp.txt @@ -1,2 +1,2 @@ -REV=60e96806ff1c +REV=b6609650a911 REPO=http://hg.mozilla.org/releases/mozilla-release