diff options
author | Markus Heiser <markus.heiser@darmarIT.de> | 2022-08-14 14:25:14 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-14 14:25:14 +0200 |
commit | 649d1a144de332c87c7e2dd3de78e28968472b56 (patch) | |
tree | 1add7c7f1f426b3f18f3837412b7c2d6a3661bbe | |
parent | 2bd3c2079ea73a12c37fef0667d654d0528df89b (diff) | |
parent | ef81d14ccf6838d6ea58ab4d27cb1fc93c2c88c3 (diff) |
Merge pull request #1664 from return42/harden-get_engine_locales
[fix] harden get_engine_locale: handle UnknownLocaleError exceptions
-rw-r--r-- | searx/locales.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/searx/locales.py b/searx/locales.py index 227c9505..a7c037aa 100644 --- a/searx/locales.py +++ b/searx/locales.py @@ -213,7 +213,13 @@ def get_engine_locale(searxng_locale, engine_locales, default=None): # need to narrow language nor territory. return engine_locale - locale = babel.Locale.parse(searxng_locale, sep='-') + try: + locale = babel.Locale.parse(searxng_locale, sep='-') + except babel.core.UnknownLocaleError: + try: + locale = babel.Locale.parse(searxng_locale.split('-')[1]) + except babel.core.UnknownLocaleError: + return default # SearXNG's selected locale is not supported by the engine .. |