Small event ownership clean up in Python layer
It seems cleaner to me for functions like create_thread_event_object, which pass object ownership to their callers, to directly return a gdb_ref<>. This way the ownership transfer is part of the API. This patch makes this change. ChangeLog 2017-09-11 Tom Tromey <tom@tromey.com> * python/py-threadevent.c (create_thread_event_object): Return gdbpy_ref. * python/py-stopevent.h (create_stop_event_object) (create_breakpoint_event_object, create_signal_event_object): Update. * python/py-stopevent.c (create_stop_event_object): Return gdbpy_ref. (emit_stop_event): Update. * python/py-signalevent.c (create_signal_event_object): Return gdbpy_ref. * python/py-infevents.c (create_inferior_call_event_object): Update. * python/py-event.h (create_event_object) (create_thread_event_object): Update. * python/py-event.c (create_event_object): Return gdbpy_ref. * python/py-continueevent.c: Return gdbpy_ref. * python/py-bpevent.c (create_breakpoint_event_object): Return gdbpy_ref.
This commit is contained in:
parent
7c96f8c1da
commit
35c61a1dd5
10 changed files with 44 additions and 23 deletions
|
@ -20,7 +20,7 @@
|
|||
#include "defs.h"
|
||||
#include "py-stopevent.h"
|
||||
|
||||
PyObject *
|
||||
gdbpy_ref<>
|
||||
create_stop_event_object (PyTypeObject *py_type)
|
||||
{
|
||||
return create_thread_event_object (py_type);
|
||||
|
@ -70,8 +70,8 @@ emit_stop_event (struct bpstats *bs, enum gdb_signal stop_signal)
|
|||
|
||||
if (list != NULL)
|
||||
{
|
||||
stop_event_obj.reset (create_breakpoint_event_object (list.get (),
|
||||
first_bp));
|
||||
stop_event_obj = create_breakpoint_event_object (list.get (),
|
||||
first_bp);
|
||||
if (stop_event_obj == NULL)
|
||||
return -1;
|
||||
}
|
||||
|
@ -80,7 +80,7 @@ emit_stop_event (struct bpstats *bs, enum gdb_signal stop_signal)
|
|||
if (stop_signal != GDB_SIGNAL_0
|
||||
&& stop_signal != GDB_SIGNAL_TRAP)
|
||||
{
|
||||
stop_event_obj.reset (create_signal_event_object (stop_signal));
|
||||
stop_event_obj = create_signal_event_object (stop_signal);
|
||||
if (stop_event_obj == NULL)
|
||||
return -1;
|
||||
}
|
||||
|
@ -89,7 +89,7 @@ emit_stop_event (struct bpstats *bs, enum gdb_signal stop_signal)
|
|||
be known and this should eventually be unused. */
|
||||
if (stop_event_obj == NULL)
|
||||
{
|
||||
stop_event_obj.reset (create_stop_event_object (&stop_event_object_type));
|
||||
stop_event_obj = create_stop_event_object (&stop_event_object_type);
|
||||
if (stop_event_obj == NULL)
|
||||
return -1;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue