summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Heiser <markus.heiser@darmarIT.de>2022-08-14 14:25:14 +0200
committerGitHub <noreply@github.com>2022-08-14 14:25:14 +0200
commit649d1a144de332c87c7e2dd3de78e28968472b56 (patch)
tree1add7c7f1f426b3f18f3837412b7c2d6a3661bbe
parent2bd3c2079ea73a12c37fef0667d654d0528df89b (diff)
parentef81d14ccf6838d6ea58ab4d27cb1fc93c2c88c3 (diff)
Merge pull request #1664 from return42/harden-get_engine_locales
[fix] harden get_engine_locale: handle UnknownLocaleError exceptions
-rw-r--r--searx/locales.py8
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 ..