[Python-checkins] cpython (merge 3.6 -> default): Issue #28426: Fixed potential crash in PyUnicode_AsDecodedObject() in debug
serhiy.storchaka
python-checkins at python.org
Tue Oct 25 03:18:56 EDT 2016
https://hg.python.org/cpython/rev/1ab1fd00e9d6
changeset: 104694:1ab1fd00e9d6
parent: 104689:505949cb2692
parent: 104693:6af1a26e655f
user: Serhiy Storchaka <storchaka at gmail.com>
date: Tue Oct 25 10:18:16 2016 +0300
summary:
Issue #28426: Fixed potential crash in PyUnicode_AsDecodedObject() in debug build.
files:
Misc/NEWS | 3 +++
Objects/unicodeobject.c | 12 ++----------
2 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,9 @@
Core and Builtins
-----------------
+- Issue #28426: Fixed potential crash in PyUnicode_AsDecodedObject() in debug
+ build.
+
- Issue #28517: Fixed of-by-one error in the peephole optimizer that caused
keeping unreachable code.
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -3232,24 +3232,16 @@
const char *encoding,
const char *errors)
{
- PyObject *v;
-
if (!PyUnicode_Check(unicode)) {
PyErr_BadArgument();
- goto onError;
+ return NULL;
}
if (encoding == NULL)
encoding = PyUnicode_GetDefaultEncoding();
/* Decode via the codec registry */
- v = PyCodec_Decode(unicode, encoding, errors);
- if (v == NULL)
- goto onError;
- return unicode_result(v);
-
- onError:
- return NULL;
+ return PyCodec_Decode(unicode, encoding, errors);
}
PyObject *
--
Repository URL: https://hg.python.org/cpython
More information about the Python-checkins
mailing list