*** CVS/Objects/classobject.c Tue Jun 27 23:36:07 2000 --- dev/Objects/classobject.c Tue Jun 27 23:41:38 2000 *************** *** 489,501 **** inst = PyObject_NEW(PyInstanceObject, &PyInstance_Type); if (inst == NULL) return NULL; - Py_INCREF(class); - inst->in_class = (PyClassObject *)class; inst->in_dict = PyDict_New(); if (inst->in_dict == NULL) { ! Py_DECREF(inst); return NULL; } if (initstr == NULL) initstr = PyString_InternFromString("__init__"); init = instance_getattr2(inst, initstr); --- 489,501 ---- inst = PyObject_NEW(PyInstanceObject, &PyInstance_Type); if (inst == NULL) return NULL; inst->in_dict = PyDict_New(); if (inst->in_dict == NULL) { ! PyObject_DEL(inst); return NULL; } + Py_INCREF(class); + inst->in_class = (PyClassObject *)class; if (initstr == NULL) initstr = PyString_InternFromString("__init__"); init = instance_getattr2(inst, initstr);