Index: _hotshot.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/_hotshot.c,v retrieving revision 1.34 diff -c -r1.34 _hotshot.c *** _hotshot.c 17 Mar 2003 19:46:07 -0000 1.34 --- _hotshot.c 22 Sep 2003 11:54:40 -0000 *************** *** 351,359 **** --- 351,361 ---- goto finally; } if (PyDict_SetItem(self->info, key, list)) { + Py_DECREF(list); err = ERR_EXCEPTION; goto finally; } + Py_DECREF(list); } if (PyList_Append(list, value)) err = ERR_EXCEPTION; *************** *** 523,528 **** --- 525,531 ---- fclose(self->logfp); self->logfp = NULL; } + Py_XDECREF(self->info); PyObject_Del(self); } *************** *** 799,809 **** PyObject *name = PyDict_GetItem(dict, obj); if (name == NULL) { if (pack_define_func(self, fileno, fcode->co_firstlineno, ! PyString_AS_STRING(fcode->co_name)) < 0) return -1; ! if (PyDict_SetItem(dict, obj, fcode->co_name)) return -1; } } return fileno; } --- 802,817 ---- PyObject *name = PyDict_GetItem(dict, obj); if (name == NULL) { if (pack_define_func(self, fileno, fcode->co_firstlineno, ! PyString_AS_STRING(fcode->co_name)) < 0) { ! Py_DECREF(obj); return -1; ! } ! if (PyDict_SetItem(dict, obj, fcode->co_name)) { ! Py_DECREF(obj); return -1; + } } + Py_DECREF(obj); } return fileno; }