[Python-checkins] python/dist/src/Objects classobject.c,2.154.8.1,2.154.8.2
gvanrossum@users.sourceforge.net
gvanrossum@users.sourceforge.net
2002年10月18日 07:06:06 -0700
Update of /cvsroot/python/python/dist/src/Objects
In directory usw-pr-cvs1:/tmp/cvs-serv20726
Modified Files:
Tag: release22-maint
classobject.c
Log Message:
Fix (real! :-) memory leaks in half_cmp and half_binop.
Perhaps found by NealN and valgrind. Will forward port.
Index: classobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/classobject.c,v
retrieving revision 2.154.8.1
retrieving revision 2.154.8.2
diff -C2 -d -r2.154.8.1 -r2.154.8.2
*** classobject.c 13 Jun 2002 21:36:35 -0000 2.154.8.1
--- classobject.c 18 Oct 2002 14:06:02 -0000 2.154.8.2
***************
*** 1316,1319 ****
--- 1316,1320 ----
args = Py_BuildValue("(O)", w);
if (args == NULL) {
+ Py_DECREF(coercefunc);
return NULL;
}
***************
*** 1508,1513 ****
args = Py_BuildValue("(O)", w);
! if (args == NULL)
return -2;
result = PyEval_CallObject(cmp_func, args);
--- 1509,1516 ----
args = Py_BuildValue("(O)", w);
! if (args == NULL) {
! Py_DECREF(cmp_func);
return -2;
+ }
result = PyEval_CallObject(cmp_func, args);