Author: Matti Picus <matti.pi...@gmail.com> Branch: py3.5 Changeset: r95303:861c793cead8 Date: 2018-11-12 13:39 -0800 http://bitbucket.org/pypy/pypy/changeset/861c793cead8/
Log: fix merge, PyUnicode_FromEncodedObject already tested in test_decode diff --git a/pypy/module/cpyext/test/test_unicodeobject.py b/pypy/module/cpyext/test/test_unicodeobject.py --- a/pypy/module/cpyext/test/test_unicodeobject.py +++ b/pypy/module/cpyext/test/test_unicodeobject.py @@ -684,8 +684,6 @@ with raises_w(space, TypeError): PyUnicode_FromEncodedObject( space, space.wrap(u_text), null_charp, None) - assert space.unicode_w(PyUnicode_FromEncodedObject( - space, space.wrap(s_text), null_charp, None)) == u_text rffi.free_charp(b_text) def test_mbcs(self, space): 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 @@ -490,11 +490,12 @@ encoding, errors) def _pyunicode_decode(space, s, encoding, errors): - if not encoding: - # This tracks CPython 2.7, in CPython 3.4 'utf-8' is hardcoded instead - encoding = PyUnicode_GetDefaultEncoding(space) + if encoding: + w_encoding = space.newtext(rffi.charp2str(encoding)) + else: + # python 3.4 changed to this from defaultencoding + w_encoding = space.newtext('utf-8') w_str = space.newbytes(s) - w_encoding = space.newtext(rffi.charp2str(encoding)) if errors: w_errors = space.newtext(rffi.charp2str(errors)) else: @@ -530,10 +531,10 @@ All other objects, including Unicode objects, cause a TypeError to be set.""" if space.isinstance_w(w_obj, space.w_unicode): - raise oefmt(space.w_TypeError, "decoding Unicode is not supported") + raise oefmt(space.w_TypeError, "decoding str is not supported") if space.isinstance_w(w_obj, space.w_bytearray): # Python 2.x specific raise oefmt(space.w_TypeError, "decoding bytearray is not supported") - s = space.bufferstr_w(w_obj) + s = space.bytes_w(w_obj) return _pyunicode_decode(space, s, encoding, errors) _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit