From fa3ba4c3bc31e8d1b78d0f8f97b1b6140ffcbaef Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 29 Oct 2013 11:34:05 +0100 Subject: [PATCH] Issue #18609: Add a fast-path for "iso8859-1" encoding On AIX, the locale encoding may be "iso8859-1", which was not a known syntax of the legacy ISO 8859-1 encoding. Using a C codec instead of a Python codec is faster but also avoids tricky issues during Python startup or complex code. --- Objects/unicodeobject.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 87c6472e6a..a7ea9c8597 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -3021,7 +3021,8 @@ PyUnicode_Decode(const char *s, return PyUnicode_DecodeUTF8Stateful(s, size, errors, NULL); else if ((strcmp(lower, "latin-1") == 0) || (strcmp(lower, "latin1") == 0) || - (strcmp(lower, "iso-8859-1") == 0)) + (strcmp(lower, "iso-8859-1") == 0) || + (strcmp(lower, "iso8859-1") == 0)) return PyUnicode_DecodeLatin1(s, size, errors); #ifdef HAVE_MBCS else if (strcmp(lower, "mbcs") == 0) @@ -3392,7 +3393,8 @@ PyUnicode_AsEncodedString(PyObject *unicode, } else if ((strcmp(lower, "latin-1") == 0) || (strcmp(lower, "latin1") == 0) || - (strcmp(lower, "iso-8859-1") == 0)) + (strcmp(lower, "iso-8859-1") == 0) || + (strcmp(lower, "iso8859-1") == 0)) return _PyUnicode_AsLatin1String(unicode, errors); #ifdef HAVE_MBCS else if (strcmp(lower, "mbcs") == 0) -- 2.40.0