Browse Source

[fix] handle weights in accept language parsing - fixes w3ms en;q=1.0

Adam Tauber 5 years ago
parent
commit
baca55c94e
1 changed files with 3 additions and 0 deletions
  1. 3 0
      searx/webapp.py

+ 3 - 0
searx/webapp.py

@@ -178,9 +178,12 @@ flask_babel.get_translations = _get_translations
 
 
 def _get_browser_language(request, lang_list):
 def _get_browser_language(request, lang_list):
     for lang in request.headers.get("Accept-Language", "en").split(","):
     for lang in request.headers.get("Accept-Language", "en").split(","):
+        if ';' in lang:
+            lang = lang.split(';')[0]
         locale = match_language(lang, lang_list, fallback=None)
         locale = match_language(lang, lang_list, fallback=None)
         if locale is not None:
         if locale is not None:
             return locale
             return locale
+    return settings['search']['default_lang'] or 'en'
 
 
 
 
 @babel.localeselector
 @babel.localeselector