richard pushed to branch mullvad-browser-115.4.0esr-13.5-1 at The Tor Project / Applications / Mullvad Browser
Commits: 77c1e6b0 by hackademix at 2023-10-17T21:23:30+00:00 fixup! Bug 40926: Implemented the New Identity feature
Bug 42182: avoid reloading any search engine extension.
- - - - -
1 changed file:
- browser/components/newidentity/content/newidentity.js
Changes:
===================================== browser/components/newidentity/content/newidentity.js ===================================== @@ -415,10 +415,13 @@ XPCOMUtils.defineLazyGetter(this, "NewIdentityButton", () => { async reloadAddons() { logger.info("Reloading add-ons to clear their temporary state."); // Reload all active extensions except search engines, which would throw. - const addons = ( - await AddonManager.getAddonsByTypes(["extension"]) - ).filter(a => a.isActive && !a.id.endsWith("@search.mozilla.org")); - await Promise.all(addons.map(a => a.reload())); + const addons = await AddonManager.getAddonsByTypes(["extension"]); + const isSearchEngine = async addon => + (await (await fetch(addon.getResourceURI("manifest.json").spec)).json()) + ?.chrome_settings_overrides?.search_provider; + const reloadIfNeeded = async addon => + addon.isActive && !(await isSearchEngine(addon)) && addon.reload(); + await Promise.all(addons.map(addon => reloadIfNeeded(addon))); }
// Broadcast as a hook to clear other data
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/77c1...