X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fpython%2Fpy-evtregistry.c;h=f329e12528a15b243b9d4948bc05837dba1ec69e;hb=3804da7e07a13c14210d79de55ebfe2318421164;hp=0bcda838287f83e17061793af6b835dc3c6c4a00;hpb=ecd75fc8eed3bde86036141228074a20e55dcfc9;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/python/py-evtregistry.c b/gdb/python/py-evtregistry.c index 0bcda83828..f329e12528 100644 --- a/gdb/python/py-evtregistry.c +++ b/gdb/python/py-evtregistry.c @@ -1,6 +1,6 @@ /* Python interface to inferior thread event registries. - Copyright (C) 2009-2014 Free Software Foundation, Inc. + Copyright (C) 2009-2020 Free Software Foundation, Inc. This file is part of GDB. @@ -23,7 +23,7 @@ events_object gdb_py_events; -static PyTypeObject eventregistry_object_type +extern PyTypeObject eventregistry_object_type CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF ("eventregistry_object"); /* Implementation of EventRegistry.connect () -> NULL. @@ -79,22 +79,18 @@ evregpy_disconnect (PyObject *self, PyObject *function) eventregistry_object * create_eventregistry_object (void) { - eventregistry_object *eventregistry_obj; + gdbpy_ref + eventregistry_obj (PyObject_New (eventregistry_object, + &eventregistry_object_type)); - eventregistry_obj = PyObject_New (eventregistry_object, - &eventregistry_object_type); - - if (!eventregistry_obj) + if (eventregistry_obj == NULL) return NULL; eventregistry_obj->callbacks = PyList_New (0); if (!eventregistry_obj->callbacks) - { - Py_DECREF (eventregistry_obj); - return NULL; - } + return NULL; - return eventregistry_obj; + return eventregistry_obj.release (); } static void @@ -116,7 +112,7 @@ gdbpy_initialize_eventregistry (void) (PyObject *) &eventregistry_object_type); } -/* Retern the number of listeners currently connected to this +/* Return the number of listeners currently connected to this registry. */ int @@ -132,7 +128,7 @@ static PyMethodDef eventregistry_object_methods[] = { NULL } /* Sentinel. */ }; -static PyTypeObject eventregistry_object_type = +PyTypeObject eventregistry_object_type = { PyVarObject_HEAD_INIT (NULL, 0) "gdb.EventRegistry", /* tp_name */