264 static PyObject* pshoutobj_new(PyObject* self, PyObject* args) {
265 ShoutObject* me;
266
267 if (!PyArg_ParseTuple(args, ""))
268 return NULL;
when PyArg_ParseTuple() succeeds
taking False path
269
270 if (!(me = PyObject_New(ShoutObject, &ShoutObject_Type)))
271 return NULL;
when _PyObject_New() succeeds
taking False path
_PyObject_New allocated at: if (!(me = PyObject_New(ShoutObject, &ShoutObject_Type)))
ob_refcnt is now refs: 1 + N where N >= 0
272
273 me->attr = NULL;
274
275 if (!(me->conn = shout_new())) {
276 PyErr_NoMemory();
when treating unknown struct shout_t * from shout.c:276 as NULL
taking True path
277 PyObject_Del(self);
PyErr_NoMemory() returns NULL, raising MemoryError
278
279 return NULL;
280 }
281
282 return (PyObject*)me;
283 }
284