Bug 1102634 - [e10s] Add pref for add-on shims (r=ally)

This commit is contained in:
Bill McCloskey 2014-11-21 14:01:23 -08:00
Родитель 28e2e2a930
Коммит 7e5124ee68
5 изменённых файлов: 10 добавлений и 11 удалений

Просмотреть файл

@ -1820,4 +1820,9 @@ pref("print.enable_e10s_testing", false);
pref("print.enable_e10s_testing", true);
#endif
#ifdef NIGHTLY_BUILD
// Enable e10s add-on interposition by default.
pref("extensions.interposition.enabled", true);
#endif
pref("browser.defaultbrowser.notificationbar", false);

Просмотреть файл

@ -84,6 +84,7 @@ const PREF_INSTALL_REQUIREBUILTINCERTS = "extensions.install.requireBuiltInCerts
const PREF_INSTALL_DISTRO_ADDONS = "extensions.installDistroAddons";
const PREF_BRANCH_INSTALLED_ADDON = "extensions.installedDistroAddon.";
const PREF_SHOWN_SELECTION_UI = "extensions.shownSelectionUI";
const PREF_INTERPOSITION_ENABLED = "extensions.interposition.enabled";
const PREF_EM_MIN_COMPAT_APP_VERSION = "extensions.minCompatibleAppVersion";
const PREF_EM_MIN_COMPAT_PLATFORM_VERSION = "extensions.minCompatiblePlatformVersion";
@ -4282,13 +4283,11 @@ this.XPIProvider = {
let principal = Cc["@mozilla.org/systemprincipal;1"].
createInstance(Ci.nsIPrincipal);
#if defined(NIGHTLY_BUILD) && defined(HAVE_SHIMS)
if (!aMultiprocessCompatible) {
if (!aMultiprocessCompatible && Preferences.get(PREF_INTERPOSITION_ENABLED, false)) {
let interposition = Cc["@mozilla.org/addons/multiprocess-shims;1"].
getService(Ci.nsIAddonInterposition);
Cu.setAddonInterposition(aId, interposition);
}
#endif
if (!aFile.exists()) {
this.bootstrapScopes[aId] =

Просмотреть файл

@ -14,9 +14,6 @@ EXTRA_JS_MODULES.addons += [
'SpellCheckDictionaryBootstrap.js',
]
if CONFIG['MOZ_BUILD_APP'] in ['browser']:
DEFINES['HAVE_SHIMS'] = True
# Don't ship unused providers on Android
if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android':
EXTRA_JS_MODULES.addons += [

Просмотреть файл

@ -105,9 +105,6 @@ if CONFIG['MOZ_UPDATER']:
MSVC_ENABLE_PGO = True
if CONFIG['MOZ_BUILD_APP'] in ['browser']:
DEFINES['HAVE_SHIMS'] = True
include('/ipc/chromium/chromium-config.mozbuild')
FINAL_LIBRARY = 'xul'

Просмотреть файл

@ -551,7 +551,9 @@ nsXREDirProvider::GetFiles(const char* aProperty, nsISimpleEnumerator** aResult)
static void
RegisterExtensionInterpositions(nsINIParser &parser)
{
#if defined(NIGHTLY_BUILD) && defined(HAVE_SHIMS)
if (!mozilla::Preferences::GetBool("extensions.interposition.enabled", false))
return;
nsCOMPtr<nsIAddonInterposition> interposition =
do_GetService("@mozilla.org/addons/multiprocess-shims;1");
@ -570,7 +572,6 @@ RegisterExtensionInterpositions(nsINIParser &parser)
continue;
}
while (true);
#endif
}
static void