summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2017-03-08 06:21:26 +0000
committerGerrit Code Review <review@openstack.org>2017-03-08 06:21:27 +0000
commit0ff3ab0590c685b5817534ac4a39ffc99f66e5fc (patch)
treee69ea00651d1e4942993897b94377ae2412cf8c6
parentc103d6f682e982b1bdf474e8c8383b86f6b01c1d (diff)
parent108d2bb7a986ced5014e43da5cda29dae5d15ec1 (diff)
downloadoslo-i18n-0ff3ab0590c685b5817534ac4a39ffc99f66e5fc.tar.gz
Merge "Fix wrong response with language zh-TW."
-rw-r--r--oslo_i18n/_gettextutils.py18
1 files changed, 15 insertions, 3 deletions
diff --git a/oslo_i18n/_gettextutils.py b/oslo_i18n/_gettextutils.py
index 8d78376..9153b36 100644
--- a/oslo_i18n/_gettextutils.py
+++ b/oslo_i18n/_gettextutils.py
@@ -80,10 +80,22 @@ def get_available_languages(domain):
'zh_Hant_HK': 'zh_HK',
'zh_Hant': 'zh_TW',
'fil': 'tl_PH'}
-
language_list.extend(alias for locale, alias in aliases.items()
if (locale in language_list and
alias not in language_list))
- _AVAILABLE_LANGUAGES[domain] = language_list
- return copy.copy(language_list)
+ language_list.extend(alias for locale, alias in aliases.items()
+ if (locale not in language_list and
+ find(alias)))
+
+ # In webob.acceptparse, the best_match is just match the first element in
+ # the language_list, so make the precise element in front
+ result = ['en_US']
+ for i in language_list[1:]:
+ if '_' in i:
+ result.insert(1, i)
+ else:
+ result.append(i)
+
+ _AVAILABLE_LANGUAGES[domain] = result
+ return copy.copy(result)