diff --git a/Misc/ACKS b/Misc/ACKS index bf686f49ddf..2fb33823edb 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -127,6 +127,7 @@ Tony Campbell Brett Cannon Mike Carlton Terry Carroll +Damien Cassou Lorenzo M. Catucci Donn Cave Charles Cazabon diff --git a/Misc/NEWS b/Misc/NEWS index 1ac29ff758a..29e6dadaa52 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -9,6 +9,8 @@ What's New in Python 2.7.4 Core and Builtins ----------------- +- Issue #14761: Fix potential leak on an error case in the import machinery. + - Issue #14699: Fix calling the classmethod descriptor directly. - Issue #11603 (again): Setting __repr__ to __str__ now raises a RuntimeError diff --git a/Python/import.c b/Python/import.c index 108a1e1b074..2f11e756c92 100644 --- a/Python/import.c +++ b/Python/import.c @@ -998,7 +998,7 @@ load_source_module(char *name, char *pathname, FILE *fp) FILE *fpc; char *buf; char *cpathname; - PyCodeObject *co; + PyCodeObject *co = NULL; PyObject *m; if (fstat(fileno(fp), &st) != 0) { @@ -1054,6 +1054,7 @@ load_source_module(char *name, char *pathname, FILE *fp) return m; error_exit: + Py_XDECREF(co); PyMem_FREE(buf); return NULL; }