From 7c2f21cd23dae1de52b0649d14e7622b98c90d20 Mon Sep 17 00:00:00 2001
From: Alex Catarineu <acat@torproject.org>
Date: Wed, 27 Jan 2021 11:28:05 +0100
Subject: [PATCH] Bug 40309: Avoid using regional OS locales

Only use regional OS locales if the pref
`intl.regional_prefs.use_os_locales` is set to true.
---
 intl/locale/LocaleService.cpp | 25 -------------------------
 1 file changed, 25 deletions(-)

diff --git a/intl/locale/LocaleService.cpp b/intl/locale/LocaleService.cpp
index 022d41cab2e2d..ac001ee98991c 100644
--- a/intl/locale/LocaleService.cpp
+++ b/intl/locale/LocaleService.cpp
@@ -452,31 +452,6 @@ LocaleService::GetRegionalPrefsLocales(nsTArray<nsCString>& aRetVal) {
             OSPreferences::GetInstance()->GetRegionalPrefsLocales(aRetVal))) {
       return NS_OK;
     }
-
-    // If we fail to retrieve them, return the app locales.
-    GetAppLocalesAsBCP47(aRetVal);
-    return NS_OK;
-  }
-
-  // Otherwise, fetch OS Regional Preferences locales and compare the first one
-  // to the app locale. If the language subtag matches, we can safely use
-  // the OS Regional Preferences locale.
-  //
-  // This facilitates scenarios such as Firefox in "en-US" and User sets
-  // regional prefs to "en-GB".
-  nsAutoCString appLocale;
-  AutoTArray<nsCString, 10> regionalPrefsLocales;
-  LocaleService::GetInstance()->GetAppLocaleAsBCP47(appLocale);
-
-  if (NS_FAILED(OSPreferences::GetInstance()->GetRegionalPrefsLocales(
-          regionalPrefsLocales))) {
-    GetAppLocalesAsBCP47(aRetVal);
-    return NS_OK;
-  }
-
-  if (LocaleService::LanguagesMatch(appLocale, regionalPrefsLocales[0])) {
-    aRetVal = regionalPrefsLocales.Clone();
-    return NS_OK;
   }
 
   // Otherwise use the app locales.
-- 
GitLab