From f05d85ff6bc57915f6945b3055933ccc8773ab59 Mon Sep 17 00:00:00 2001 From: Roy Tam Date: Sat, 8 Jun 2019 20:30:03 +0800 Subject: [PATCH] import change from mozilla upstream: Bug 1384330 - Blocking the mozAddonManager when pref 'privacy.resistFingerprinting.block_mozAddonManager' is true. r=arthuredelstein,mossop --- toolkit/mozapps/webextensions/AddonManagerWebAPI.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/toolkit/mozapps/webextensions/AddonManagerWebAPI.cpp b/toolkit/mozapps/webextensions/AddonManagerWebAPI.cpp index 3f2a7a5299..17ea9b0210 100644 --- a/toolkit/mozapps/webextensions/AddonManagerWebAPI.cpp +++ b/toolkit/mozapps/webextensions/AddonManagerWebAPI.cpp @@ -20,6 +20,12 @@ using namespace mozilla::dom; static bool IsValidHost(const nsACString& host) { + // This hidden pref allows users to disable mozAddonManager entirely if they want + // for fingerprinting resistance. Someone like Tor browser will use this pref. + if (Preferences::GetBool("privacy.resistFingerprinting.block_mozAddonManager")) { + return false; + } + // This is ugly, but Preferences.h doesn't have support // for default prefs or locked prefs nsCOMPtr prefService (do_GetService(NS_PREFSERVICE_CONTRACTID));