From: Alexandre Vassalotti Date: Sat, 27 Dec 2008 09:09:15 +0000 (+0000) Subject: Fix wrong bytes type conversion in PyUnicode_AsUnicodeEscapeString. X-Git-Tag: v3.1a1~665 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9cb6f7f7a5afd587820ca378ad1129427f25b58f;p=python Fix wrong bytes type conversion in PyUnicode_AsUnicodeEscapeString. Fix wrong bytes type conversion in PyUnicode_AsUnicodeDecodeString. --- diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 4a5aec7de8..e57b60cab9 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -3257,20 +3257,14 @@ PyObject *PyUnicode_EncodeUnicodeEscape(const Py_UNICODE *s, PyObject *PyUnicode_AsUnicodeEscapeString(PyObject *unicode) { - PyObject *s, *result; + PyObject *s; if (!PyUnicode_Check(unicode)) { PyErr_BadArgument(); return NULL; } s = PyUnicode_EncodeUnicodeEscape(PyUnicode_AS_UNICODE(unicode), PyUnicode_GET_SIZE(unicode)); - - if (!s) - return NULL; - result = PyBytes_FromStringAndSize(PyByteArray_AS_STRING(s), - PyByteArray_GET_SIZE(s)); - Py_DECREF(s); - return result; + return s; } /* --- Raw Unicode Escape Codec ------------------------------------------- */ @@ -3482,7 +3476,7 @@ PyObject *PyUnicode_EncodeRawUnicodeEscape(const Py_UNICODE *s, PyObject *PyUnicode_AsRawUnicodeEscapeString(PyObject *unicode) { - PyObject *s, *result; + PyObject *s; if (!PyUnicode_Check(unicode)) { PyErr_BadArgument(); return NULL; @@ -3490,12 +3484,7 @@ PyObject *PyUnicode_AsRawUnicodeEscapeString(PyObject *unicode) s = PyUnicode_EncodeRawUnicodeEscape(PyUnicode_AS_UNICODE(unicode), PyUnicode_GET_SIZE(unicode)); - if (!s) - return NULL; - result = PyBytes_FromStringAndSize(PyByteArray_AS_STRING(s), - PyByteArray_GET_SIZE(s)); - Py_DECREF(s); - return result; + return s; } /* --- Unicode Internal Codec ------------------------------------------- */