diff --git a/gramps/gen/utils/grampslocale.py b/gramps/gen/utils/grampslocale.py index 9e27d10e1..f58cba2b5 100644 --- a/gramps/gen/utils/grampslocale.py +++ b/gramps/gen/utils/grampslocale.py @@ -151,7 +151,7 @@ class GrampsLocale(object): if mac(): from . import maclocale - (self.lang, self.language) = maclocale.mac_setup_localization(self, lang, language) + maclocale.mac_setup_localization(self, lang, language) else: self.__init_from_environment(lang, language) diff --git a/gramps/gen/utils/maclocale.py b/gramps/gen/utils/maclocale.py index 74872ac95..efc883351 100644 --- a/gramps/gen/utils/maclocale.py +++ b/gramps/gen/utils/maclocale.py @@ -203,7 +203,7 @@ def mac_setup_localization(glocale, lang, language): if len(loc) > 2: loc = loc[:2] # First see if it matches lang - if (lang.startswith(loc) + if (lang and lang.startswith(loc) and os.path.exists(os.path.join(locale_dir, lang[:5]))): return lang[:5] else: @@ -258,6 +258,7 @@ def mac_setup_localization(glocale, lang, language): elif len(collation) > 0: lang = mac_resolve_locale(collation) + glocale.lang = lang if not language or len(language) == 0: if "LANGUAGE" in os.environ: @@ -275,4 +276,4 @@ def mac_setup_localization(glocale, lang, language): and not collation.startswith("en")): language = [collation] - return (lang, language) + glocale.language = language