Mercurial > cpython-lru_cache-weakref
diff Python/errors.c @ 76389:e8c87226bcb3
fix refcnt/style/debuging oversights
| author | Benjamin Peterson <benjamin@python.org> |
|---|---|
| date | Wed, 18 Apr 2012 10:48:00 -0400 |
| parents | bf23a6c215f6 |
| children | cb6811eb20ef |
line wrap: on
line diff
--- a/Python/errors.c Wed Apr 18 08:30:51 2012 -0500 +++ b/Python/errors.c Wed Apr 18 10:48:00 2012 -0400 @@ -593,13 +593,15 @@ if (msg == NULL) return NULL; - args = PyTuple_New(1); + args = PyTuple_New(0); if (args == NULL) return NULL; kwargs = PyDict_New(); - if (kwargs == NULL) + if (kwargs == NULL) { + Py_DECREF(args); return NULL; + } if (name == NULL) { Py_INCREF(Py_None); @@ -612,13 +614,13 @@ } Py_INCREF(msg); - PyTuple_SetItem(args, 0, NULL);//msg); + PyTuple_SET_ITEM(args, 0, msg); PyDict_SetItemString(kwargs, "name", name); PyDict_SetItemString(kwargs, "path", path); error = PyObject_Call(PyExc_ImportError, args, kwargs); - if (error!= NULL) { - PyErr_SetObject((PyObject *) Py_TYPE(error), error); + if (error != NULL) { + PyErr_SetObject((PyObject *)Py_TYPE(error), error); Py_DECREF(error); }
