diff --git a/toolkit/mozapps/extensions/internal/XPIProvider.jsm b/toolkit/mozapps/extensions/internal/XPIProvider.jsm index 091c91f8cd0c4..b9de7bce9510d 100644 --- a/toolkit/mozapps/extensions/internal/XPIProvider.jsm +++ b/toolkit/mozapps/extensions/internal/XPIProvider.jsm @@ -4282,12 +4282,13 @@ this.XPIProvider = { let principal = Cc["@mozilla.org/systemprincipal;1"]. createInstance(Ci.nsIPrincipal); - - if (!aMultiprocessCompatible && Services.appinfo.browserTabsRemoteAutostart) { +#if defined(NIGHTLY_BUILD) && defined(HAVE_SHIMS) + if (!aMultiprocessCompatible) { let interposition = Cc["@mozilla.org/addons/multiprocess-shims;1"]. getService(Ci.nsIAddonInterposition); Cu.setAddonInterposition(aId, interposition); } +#endif if (!aFile.exists()) { this.bootstrapScopes[aId] = diff --git a/toolkit/mozapps/extensions/internal/moz.build b/toolkit/mozapps/extensions/internal/moz.build index 24fe344bf7d2c..45b887335d32b 100644 --- a/toolkit/mozapps/extensions/internal/moz.build +++ b/toolkit/mozapps/extensions/internal/moz.build @@ -14,6 +14,9 @@ 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 += [ diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build index 85e38b4c0da76..3a81cd4e3ff1a 100644 --- a/toolkit/xre/moz.build +++ b/toolkit/xre/moz.build @@ -105,6 +105,9 @@ 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' diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp index 9c7d539a5e37c..f290eea346f10 100644 --- a/toolkit/xre/nsXREDirProvider.cpp +++ b/toolkit/xre/nsXREDirProvider.cpp @@ -551,9 +551,7 @@ nsXREDirProvider::GetFiles(const char* aProperty, nsISimpleEnumerator** aResult) static void RegisterExtensionInterpositions(nsINIParser &parser) { - if (!mozilla::BrowserTabsRemoteAutostart()) - return; - +#if defined(NIGHTLY_BUILD) && defined(HAVE_SHIMS) nsCOMPtr interposition = do_GetService("@mozilla.org/addons/multiprocess-shims;1"); @@ -572,6 +570,7 @@ RegisterExtensionInterpositions(nsINIParser &parser) continue; } while (true); +#endif } static void