SIGN IN SIGN UP
python / cpython UNCLAIMED

The Python programming language

72156 0 71 Python

gh-94526: getpath_dirname() no longer encodes the path (#97645)

Fix the Python path configuration used to initialized sys.path at
Python startup. Paths are no longer encoded to UTF-8/strict to avoid
encoding errors if it contains surrogate characters (bytes paths are
decoded with the surrogateescape error handler).

getpath_basename() and getpath_dirname() functions no longer encode
the path to UTF-8/strict, but work directly on Unicode strings. These
functions now use PyUnicode_FindChar() and PyUnicode_Substring() on
the Unicode path, rather than strrchr() on the encoded bytes string.
V
Victor Stinner committed
9f2f1dd131b912e224cd0269adde8879799686c4
Parent: ff54dd9
Committed by GitHub <noreply@github.com> on 9/30/2022, 12:58:30 PM