[Python-checkins] CVS: python/dist/src/Python compile.c,2.142.2.1,2.142.2.2
Moshe Zadka
moshez@users.sourceforge.net
2001年3月30日 10:50:25 -0800
Update of /cvsroot/python/python/dist/src/Python
In directory usw-pr-cvs1:/tmp/cvs-serv17116/Python
Modified Files:
Tag: release20-maint
compile.c
Log Message:
Fix memory leak with from import ...
Index: compile.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/compile.c,v
retrieving revision 2.142.2.1
retrieving revision 2.142.2.2
diff -C2 -r2.142.2.1 -r2.142.2.2
*** compile.c 2001年03月30日 16:31:49 2.142.2.1
--- compile.c 2001年03月30日 18:50:23 2.142.2.2
***************
*** 2326,2334 ****
{
int i;
- PyObject *tup;
REQ(n, import_stmt);
/* 'import' dotted_name (',' dotted_name)* |
'from' dotted_name 'import' ('*' | NAME (',' NAME)*) */
if (STR(CHILD(n, 0))[0] == 'f') {
/* 'from' dotted_name 'import' ... */
REQ(CHILD(n, 1), dotted_name);
--- 2326,2334 ----
{
int i;
REQ(n, import_stmt);
/* 'import' dotted_name (',' dotted_name)* |
'from' dotted_name 'import' ('*' | NAME (',' NAME)*) */
if (STR(CHILD(n, 0))[0] == 'f') {
+ PyObject *tup;
/* 'from' dotted_name 'import' ... */
REQ(CHILD(n, 1), dotted_name);
***************
*** 2345,2348 ****
--- 2345,2349 ----
}
com_addoparg(c, LOAD_CONST, com_addconst(c, tup));
+ Py_DECREF(tup);
com_push(c, 1);
com_addopname(c, IMPORT_NAME, CHILD(n, 1));