[Python-checkins] python/dist/src/Objects object.c,2.196,2.197
tim_one@users.sourceforge.net
tim_one@users.sourceforge.net
Wed, 05 Feb 2003 11:35:22 -0800
Update of /cvsroot/python/python/dist/src/Objects
In directory sc8-pr-cvs1:/tmp/cvs-serv3511/python/Objects
Modified Files:
object.c
Log Message:
SF bug 681122: Built-in function dir() causes refcount leak in baseclasses.
merge_class_dict(): This was missing a decref.
Bugfix candidate.
Index: object.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/object.c,v
retrieving revision 2.196
retrieving revision 2.197
diff -C2 -d -r2.196 -r2.197
*** object.c 20 Jan 2003 16:54:59 -0000 2.196
--- object.c 5 Feb 2003 19:35:19 -0000 2.197
***************
*** 1657,1660 ****
--- 1657,1661 ----
else {
for (i = 0; i < n; i++) {
+ int status;
PyObject *base = PySequence_GetItem(bases, i);
if (base == NULL) {
***************
*** 1662,1666 ****
return -1;
}
! if (merge_class_dict(dict, base) < 0) {
Py_DECREF(bases);
return -1;
--- 1663,1669 ----
return -1;
}
! status = merge_class_dict(dict, base);
! Py_DECREF(base);
! if (status < 0) {
Py_DECREF(bases);
return -1;