aboutsummaryrefslogtreecommitdiff
path: root/gdb/python/py-event.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/python/py-event.c')
-rw-r--r--gdb/python/py-event.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/gdb/python/py-event.c b/gdb/python/py-event.c
index 161a5e1..127dcc7 100644
--- a/gdb/python/py-event.c
+++ b/gdb/python/py-event.c
@@ -30,21 +30,15 @@ evpy_dealloc (PyObject *self)
PyObject *
create_event_object (PyTypeObject *py_type)
{
- event_object *event_obj;
-
- event_obj = PyObject_New (event_object, py_type);
- if (!event_obj)
- goto fail;
+ gdbpy_ref<event_object> event_obj (PyObject_New (event_object, py_type));
+ if (event_obj == NULL)
+ return NULL;
event_obj->dict = PyDict_New ();
if (!event_obj->dict)
- goto fail;
-
- return (PyObject*) event_obj;
+ return NULL;
- fail:
- Py_XDECREF (event_obj);
- return NULL;
+ return (PyObject*) event_obj.release ();
}
/* Add the attribute ATTR to the event object EVENT. In