mirror of
https://github.com/python/cpython.git
synced 2026-05-06 20:51:17 -04:00
ab9893c406
If the error handler is used, a new bytes object is created to set as the object attribute of UnicodeDecodeError, and that bytes object then replaces the original data. A pointer to the decoded data will became invalid after destroying that temporary bytes object. So we need other way to return the first invalid escape from _PyUnicode_DecodeUnicodeEscapeInternal(). _PyBytes_DecodeEscape() does not have such issue, because it does not use the error handlers registry, but it should be changed for compatibility with _PyUnicode_DecodeUnicodeEscapeInternal(). (cherry picked from commit9f69a58623) (cherry picked from commit6279eb8c07) (cherry picked from commita75953b347) (cherry picked from commit0c33e5baed) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>