[Python-checkins] gh-106843: fix memleak in _PyCompile_CleanDoc (#106846)
methane
webhook-mailer at python.org
Mon Jul 17 23:44:20 EDT 2023
https://github.com/python/cpython/commit/ece3b9d12a2f47da8b144f185dfba9b2b725fc82
commit: ece3b9d12a2f47da8b144f185dfba9b2b725fc82
branch: main
author: Inada Naoki <songofacandy at gmail.com>
committer: methane <songofacandy at gmail.com>
date: 2023-07-18T03:44:16Z
summary:
gh-106843: fix memleak in _PyCompile_CleanDoc (#106846)
files:
M Python/compile.c
diff --git a/Python/compile.c b/Python/compile.c
index b80f7c01bcd90..2a735382c0cfd 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -2267,6 +2267,7 @@ compiler_function_body(struct compiler *c, stmt_ty s, int is_async, Py_ssize_t f
}
}
if (compiler_add_const(c->c_const_cache, c->u, docstring ? docstring : Py_None) < 0) {
+ Py_XDECREF(docstring);
compiler_exit_scope(c);
return ERROR;
}
@@ -8060,7 +8061,9 @@ _PyCompile_CleanDoc(PyObject *doc)
}
Py_DECREF(doc);
- return PyUnicode_FromStringAndSize(buff, w - buff);
+ PyObject *res = PyUnicode_FromStringAndSize(buff, w - buff);
+ PyMem_Free(buff);
+ return res;
}
More information about the Python-checkins
mailing list