gh-123853: Cleanup Windows 95 locale fallback support (#144738)

Closes #123853
This commit is contained in:
莯凛 2026-02-27 18:06:46 +08:00 committed by GitHub
parent 6ea84b2726
commit 171e0facc4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 1 additions and 15 deletions

View file

@ -570,10 +570,6 @@ def _getdefaultlocale(envvars=('LC_ALL', 'LC_CTYPE', 'LANG', 'LANGUAGE')):
except (ImportError, AttributeError):
pass
else:
# make sure the code/encoding values are valid
if sys.platform == "win32" and code and code[:2] == "0x":
# map windows language identifier to language name
code = windows_locale.get(int(code, 0))
# ...add other platform-specific processing here, if
# necessary...
return code, encoding

View file

@ -0,0 +1 @@
Removed Windows 95 compatibility for :func:`locale.getdefaultlocale`.

View file

@ -555,17 +555,6 @@ _locale__getdefaultlocale_impl(PyObject *module)
return Py_BuildValue("ss", locale, encoding);
}
/* If we end up here, this windows version didn't know about
ISO639/ISO3166 names (it's probably Windows 95). Return the
Windows language identifier instead (a hexadecimal number) */
locale[0] = '0';
locale[1] = 'x';
if (GetLocaleInfoA(LOCALE_USER_DEFAULT, LOCALE_IDEFAULTLANGUAGE,
locale+2, sizeof(locale)-2)) {
return Py_BuildValue("ss", locale, encoding);
}
/* cannot determine the language code (very unlikely) */
return Py_BuildValue("Os", Py_None, encoding);
}