From 93e8012f2cabd84f30b52e19fd3dc557efa9f8af Mon Sep 17 00:00:00 2001 From: Zackery Spytz Date: Fri, 22 Mar 2019 01:24:34 -0600 Subject: bpo-36398: Fix a possible crash in structseq_repr(). (GH-12492) If the first PyUnicode_DecodeUTF8() call fails in structseq_repr(), _PyUnicodeWriter_Dealloc() will be called on an uninitialized _PyUnicodeWriter. --- .../next/Core and Builtins/2019-03-21-22-19-38.bpo-36398.B_jXGe.rst | 1 + Objects/structseq.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 Misc/NEWS.d/next/Core and Builtins/2019-03-21-22-19-38.bpo-36398.B_jXGe.rst diff --git a/Misc/NEWS.d/next/Core and Builtins/2019-03-21-22-19-38.bpo-36398.B_jXGe.rst b/Misc/NEWS.d/next/Core and Builtins/2019-03-21-22-19-38.bpo-36398.B_jXGe.rst new file mode 100644 index 0000000000..2b00283096 --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2019-03-21-22-19-38.bpo-36398.B_jXGe.rst @@ -0,0 +1 @@ +Fix a possible crash in ``structseq_repr()``. diff --git a/Objects/structseq.c b/Objects/structseq.c index 5278313ffd..cf36fa7f97 100644 --- a/Objects/structseq.c +++ b/Objects/structseq.c @@ -176,7 +176,7 @@ structseq_repr(PyStructSequence *obj) strlen(typ->tp_name), NULL); if (type_name == NULL) { - goto error; + return NULL; } _PyUnicodeWriter_Init(&writer); -- cgit v1.2.1