Author: Matti Picus <matti.pi...@gmail.com> Branch: unicode-utf8 Changeset: r95108:f33f0bb4a73e Date: 2018-09-12 15:33 +0300 http://bitbucket.org/pypy/pypy/changeset/f33f0bb4a73e/
Log: fix recursive call to decode_object, set errorhandler diff --git a/pypy/module/cpyext/unicodeobject.py b/pypy/module/cpyext/unicodeobject.py --- a/pypy/module/cpyext/unicodeobject.py +++ b/pypy/module/cpyext/unicodeobject.py @@ -628,8 +628,10 @@ else: errors = None + state = space.fromcache(CodecState) result, _, length, byteorder = unicodehelper.str_decode_utf_32_helper( - string, errors, final=True, errorhandler=None, byteorder=byteorder) + string, errors, final=True, errorhandler=state.decode_error_handler, + byteorder=byteorder) if pbyteorder is not None: pbyteorder[0] = rffi.cast(rffi.INT_real, byteorder) return space.newutf8(result, length) diff --git a/pypy/objspace/std/bytesobject.py b/pypy/objspace/std/bytesobject.py --- a/pypy/objspace/std/bytesobject.py +++ b/pypy/objspace/std/bytesobject.py @@ -452,9 +452,7 @@ return self._value def utf8_w(self, space): - # Use the default encoding. - encoding = getdefaultencoding(space) - return space.utf8_w(decode_object(space, self, encoding, None)) + return self._value def buffer_w(self, space, flags): space.check_buf_flags(flags, True) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit