[tor-commits] [Git][tpo/applications/tor-browser][base-browser-102.15.0esr-12.5-1] Bug 42084: Ensure spoofing works even if preferences are set out of order.

ma1 (@ma1) git at gitlab.torproject.org
Tue Sep 12 09:15:50 UTC 2023



ma1 pushed to branch base-browser-102.15.0esr-12.5-1 at The Tor Project / Applications / Tor Browser


Commits:
60d54c03 by hackademix at 2023-09-12T11:15:40+02:00
Bug 42084: Ensure spoofing works even if preferences are set out of order.

- - - - -


1 changed file:

- toolkit/components/resistfingerprinting/RFPHelper.jsm


Changes:

=====================================
toolkit/components/resistfingerprinting/RFPHelper.jsm
=====================================
@@ -163,6 +163,9 @@ class _RFPHelper {
     // Add RFP and Letterboxing observers if prefs are enabled
     this._handleResistFingerprintingChanged();
     this._handleLetterboxingPrefChanged();
+
+    // Synchronize language preferences if accidentally messed up (tor-browser#42084)
+    this._handleSpoofEnglishChanged();
   }
 
   uninit() {
@@ -216,6 +219,7 @@ class _RFPHelper {
         this._handleResistFingerprintingChanged();
         break;
       case kPrefSpoofEnglish:
+      case "intl.accept_languages":
         this._handleSpoofEnglishChanged();
         break;
       case kPrefLetterboxing:
@@ -264,6 +268,7 @@ class _RFPHelper {
   }
 
   _handleSpoofEnglishChanged() {
+    Services.prefs.removeObserver("intl.accept_languages", this);
     switch (Services.prefs.getIntPref(kPrefSpoofEnglish)) {
       case 0: // will prompt
       // This should only happen when turning privacy.resistFingerprinting off.
@@ -282,6 +287,8 @@ class _RFPHelper {
       case 2: // spoof
         Services.prefs.setCharPref("intl.accept_languages", "en-US, en");
         Services.prefs.setBoolPref("javascript.use_us_english_locale", true);
+        // Ensure spoofing works if preferences are set out of order
+        Services.prefs.addObserver("intl.accept_languages", this);
         break;
       default:
         break;



View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/60d54c0397f07788859617643d26c9f7db8d05c2

-- 
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/60d54c0397f07788859617643d26c9f7db8d05c2
You're receiving this email because of your account on gitlab.torproject.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.torproject.org/pipermail/tor-commits/attachments/20230912/fb6b0248/attachment-0001.htm>


More information about the tor-commits mailing list