@@ -381,9 +381,9 @@ def _try_load_reducing(parts):
381381 if likely_subtag is not None :
382382 parts2 = parse_locale (likely_subtag )
383383 if len (parts2 ) == 5 :
384- language2 , _ , script2 , variant2 , modifier2 = parse_locale ( likely_subtag )
384+ language2 , _ , script2 , variant2 , modifier2 = parts2
385385 else :
386- language2 , _ , script2 , variant2 = parse_locale ( likely_subtag )
386+ language2 , _ , script2 , variant2 = parts2
387387 modifier2 = None
388388 locale = _try_load_reducing ((language2 , territory , script2 , variant2 , modifier2 ))
389389 if locale is not None :
@@ -1177,7 +1177,7 @@ def negotiate_locale(preferred: Iterable[str], available: Iterable[str], sep: st
11771177def parse_locale (
11781178 identifier : str ,
11791179 sep : str = '_'
1180- ) -> tuple [str , str | None , str | None , str | None , str | None ]:
1180+ ) -> tuple [str , str | None , str | None , str | None ] | tuple [ str , str | None , str | None , str | None , str | None ]:
11811181 """Parse a locale identifier into a tuple of the form ``(language,
11821182 territory, script, variant, modifier)``.
11831183
0 commit comments