FIX: English locale must not fall back to any other locale

FIX: English locale must not fall back to any other locale

diff --git a/lib/i18n/backend/fallback_locale_list.rb b/lib/i18n/backend/fallback_locale_list.rb
index d0abe59..e1b3d25 100644
--- a/lib/i18n/backend/fallback_locale_list.rb
+++ b/lib/i18n/backend/fallback_locale_list.rb
@@ -12,7 +12,7 @@ module I18n
         site_locale = SiteSetting.default_locale.to_sym
 
         locale_list =
-          if locale == site_locale || site_locale == :en
+          if locale == site_locale || site_locale == :en || fallback_locale == :en
             [locale, fallback_locale, :en]
           else
             site_fallback_locale = LocaleSiteSetting.fallback_locale(site_locale)
diff --git a/spec/lib/i18n/fallback_locale_list_spec.rb b/spec/lib/i18n/fallback_locale_list_spec.rb
index 004ebfc..793ac8b 100644
--- a/spec/lib/i18n/fallback_locale_list_spec.rb
+++ b/spec/lib/i18n/fallback_locale_list_spec.rb
@@ -27,6 +27,7 @@ describe I18n::Backend::FallbackLocaleList do
     expect(list[:ru]).to eq([:ru, :de, :en])
     expect(list[:de]).to eq([:de, :en])
     expect(list[:en]).to eq([:en])
+    expect(list[:en_US]).to eq([:en_US, :en])
   end
 
   context "when plugin registered fallback locale" do

GitHub sha: 19edc4ab

This commit has been mentioned on Discourse Meta. There might be relevant details there: