diff --git a/js/xpconnect/loader/mozJSComponentLoader.cpp b/js/xpconnect/loader/mozJSComponentLoader.cpp index 109abdc6408e4152c5f0e3ca171f40c7c7959e67..6b1cb307016a2455679a5d888d32d3a8d4e8c74e 100644 --- a/js/xpconnect/loader/mozJSComponentLoader.cpp +++ b/js/xpconnect/loader/mozJSComponentLoader.cpp @@ -304,7 +304,16 @@ mozJSComponentLoader::ReallyInit() { MOZ_ASSERT(!mInitialized); - mShareLoaderGlobal = Preferences::GetBool("jsloader.shareGlobal"); + const char* shareGlobal = PR_GetEnv("MOZ_LOADER_SHARE_GLOBAL"); + if (shareGlobal && *shareGlobal) { + nsDependentCString val(shareGlobal); + mShareLoaderGlobal = !(val.EqualsLiteral("0") || + val.LowerCaseEqualsLiteral("no") || + val.LowerCaseEqualsLiteral("false") || + val.LowerCaseEqualsLiteral("off")); + } else { + mShareLoaderGlobal = Preferences::GetBool("jsloader.shareGlobal"); + } nsresult rv; nsCOMPtr<nsIObserverService> obsSvc =