MFH: r460357

www/firefox-esr: work around race on sqlite3 init

PR:		225364
Obtained from:	upstream (Firefox 56)
Approved by:	ports-secteam (swills)
This commit is contained in:
Jan Beich 2018-01-31 21:00:31 +00:00
parent d8d574ae29
commit 8088ed9d41
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/branches/2018Q1/; revision=460530
6 changed files with 111 additions and 2 deletions

View File

@ -3,6 +3,7 @@
PORTNAME= thunderbird
DISTVERSION= 52.6.0
PORTREVISION= 1
CATEGORIES= mail news net-im ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source

View File

@ -0,0 +1,36 @@
commit 10b55207992c
Author: Kai Engert <kaie@kuix.de>
Date: Fri Jul 14 15:31:30 2017 +0200
Bug 1380706, PSM should depend on mozStorage, as a workaround for a sqlite3_config race, r=keeler
---
security/manager/ssl/nsNSSComponent.cpp | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git security/manager/ssl/nsNSSComponent.cpp security/manager/ssl/nsNSSComponent.cpp
index f51f8af47d51..a82c1ed61fba 100644
--- mozilla/security/manager/ssl/nsNSSComponent.cpp
+++ mozilla/security/manager/ssl/nsNSSComponent.cpp
@@ -13,6 +13,7 @@
#include "SharedSSLState.h"
#include "cert.h"
#include "certdb.h"
+#include "mozStorageCID.h"
#include "mozilla/ArrayUtils.h"
#include "mozilla/Assertions.h"
#include "mozilla/Casting.h"
@@ -2032,6 +2033,14 @@ nsNSSComponent::Init()
return NS_ERROR_NOT_AVAILABLE;
}
+ // To avoid a sqlite3_config race in NSS init, as a workaround for
+ // bug 730495, we require the storage service to get initialized first.
+ nsCOMPtr<nsISupports> storageService =
+ do_GetService(MOZ_STORAGE_SERVICE_CONTRACTID);
+ if (!storageService) {
+ return NS_ERROR_NOT_AVAILABLE;
+ }
+
MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("Beginning NSS initialization\n"));
nsresult rv = InitializePIPNSSBundle();

View File

@ -4,7 +4,7 @@
PORTNAME= firefox
DISTVERSION= 52.6.0
DISTVERSIONSUFFIX=esr
PORTREVISION= 1
PORTREVISION= 2
PORTEPOCH= 1
CATEGORIES= www ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \

View File

@ -0,0 +1,36 @@
commit 10b55207992c
Author: Kai Engert <kaie@kuix.de>
Date: Fri Jul 14 15:31:30 2017 +0200
Bug 1380706, PSM should depend on mozStorage, as a workaround for a sqlite3_config race, r=keeler
---
security/manager/ssl/nsNSSComponent.cpp | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git security/manager/ssl/nsNSSComponent.cpp security/manager/ssl/nsNSSComponent.cpp
index f51f8af47d51..a82c1ed61fba 100644
--- security/manager/ssl/nsNSSComponent.cpp
+++ security/manager/ssl/nsNSSComponent.cpp
@@ -13,6 +13,7 @@
#include "SharedSSLState.h"
#include "cert.h"
#include "certdb.h"
+#include "mozStorageCID.h"
#include "mozilla/ArrayUtils.h"
#include "mozilla/Assertions.h"
#include "mozilla/Casting.h"
@@ -2032,6 +2033,14 @@ nsNSSComponent::Init()
return NS_ERROR_NOT_AVAILABLE;
}
+ // To avoid a sqlite3_config race in NSS init, as a workaround for
+ // bug 730495, we require the storage service to get initialized first.
+ nsCOMPtr<nsISupports> storageService =
+ do_GetService(MOZ_STORAGE_SERVICE_CONTRACTID);
+ if (!storageService) {
+ return NS_ERROR_NOT_AVAILABLE;
+ }
+
MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("Beginning NSS initialization\n"));
nsresult rv = InitializePIPNSSBundle();

View File

@ -3,8 +3,8 @@
PORTNAME= seamonkey
DISTVERSION= 2.49.1
PORTREVISION= 7
MOZILLA_VER= 52 # above + 3
PORTREVISION= 8
CATEGORIES?= www mail news editors irc ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build4/source

View File

@ -0,0 +1,36 @@
commit 10b55207992c
Author: Kai Engert <kaie@kuix.de>
Date: Fri Jul 14 15:31:30 2017 +0200
Bug 1380706, PSM should depend on mozStorage, as a workaround for a sqlite3_config race, r=keeler
---
security/manager/ssl/nsNSSComponent.cpp | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git security/manager/ssl/nsNSSComponent.cpp security/manager/ssl/nsNSSComponent.cpp
index f51f8af47d51..a82c1ed61fba 100644
--- mozilla/security/manager/ssl/nsNSSComponent.cpp
+++ mozilla/security/manager/ssl/nsNSSComponent.cpp
@@ -13,6 +13,7 @@
#include "SharedSSLState.h"
#include "cert.h"
#include "certdb.h"
+#include "mozStorageCID.h"
#include "mozilla/ArrayUtils.h"
#include "mozilla/Assertions.h"
#include "mozilla/Casting.h"
@@ -2032,6 +2033,14 @@ nsNSSComponent::Init()
return NS_ERROR_NOT_AVAILABLE;
}
+ // To avoid a sqlite3_config race in NSS init, as a workaround for
+ // bug 730495, we require the storage service to get initialized first.
+ nsCOMPtr<nsISupports> storageService =
+ do_GetService(MOZ_STORAGE_SERVICE_CONTRACTID);
+ if (!storageService) {
+ return NS_ERROR_NOT_AVAILABLE;
+ }
+
MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("Beginning NSS initialization\n"));
nsresult rv = InitializePIPNSSBundle();