diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 6d49806487f..34a934d8cd5 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -13237,8 +13237,10 @@ formatfloat(PyObject *v, int flags, int prec, int type, return -1; len = strlen(p); if (writer) { - if (_PyUnicodeWriter_Prepare(writer, len, 127) == -1) + if (_PyUnicodeWriter_Prepare(writer, len, 127) == -1) { + PyMem_Free(p); return -1; + } unicode_write_cstr(writer->buffer, writer->pos, p, len); writer->pos += len; }