mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-05-25 11:16:56 +08:00
2011-10-04 Kevin Pouget <kevin.pouget@st.com>
PR python/12691: Add the inferior to Python exited event * python/py-exitedevent.c (create_exited_event_object): Add inferior to exited_event. * python/py-event.h (emit_exited_event): Likewise * python/-inferior.c (python_inferior_exit): Likewise 2011-10-04 Kevin Pouget <kevin.pouget@st.com> PR python/12691: Add the inferior to Python exited event * gdb.python/py-events.exp: Test the inferior attribute of exited event with a fork. * gdb.python/py-events.py: Print inferior number on exit. * gdb.python/py-events.c: Fork the inferior. 2011-10-04 Kevin Pouget <kevin.pouget@st.com> PR python/12691: Add the inferior to Python exited event * gdb.texinfo (Events In Python): Describe exited inferior attribute.
This commit is contained in:
@ -22,9 +22,10 @@
|
||||
static PyTypeObject exited_event_object_type;
|
||||
|
||||
static PyObject *
|
||||
create_exited_event_object (const LONGEST *exit_code)
|
||||
create_exited_event_object (const LONGEST *exit_code, struct inferior *inf)
|
||||
{
|
||||
PyObject *exited_event;
|
||||
PyObject *inf_obj;
|
||||
|
||||
exited_event = create_event_object (&exited_event_object_type);
|
||||
|
||||
@ -37,6 +38,12 @@ create_exited_event_object (const LONGEST *exit_code)
|
||||
PyLong_FromLongLong (*exit_code)) < 0)
|
||||
goto fail;
|
||||
|
||||
inf_obj = inferior_to_inferior_object (inf);
|
||||
if (!inf_obj || evpy_add_attribute (exited_event,
|
||||
"inferior",
|
||||
inf_obj) < 0)
|
||||
goto fail;
|
||||
|
||||
return exited_event;
|
||||
|
||||
fail:
|
||||
@ -48,14 +55,14 @@ create_exited_event_object (const LONGEST *exit_code)
|
||||
will create a new Python exited event object. */
|
||||
|
||||
int
|
||||
emit_exited_event (const LONGEST *exit_code)
|
||||
emit_exited_event (const LONGEST *exit_code, struct inferior *inf)
|
||||
{
|
||||
PyObject *event;
|
||||
|
||||
if (evregpy_no_listeners_p (gdb_py_events.exited))
|
||||
return 0;
|
||||
|
||||
event = create_exited_event_object (exit_code);
|
||||
event = create_exited_event_object (exit_code, inf);
|
||||
|
||||
if (event)
|
||||
return evpy_emit_event (event, gdb_py_events.exited);
|
||||
|
Reference in New Issue
Block a user