From 3d043ef6a32bab5eeaa0a4ea0532a2a7858e518e Mon Sep 17 00:00:00 2001 From: Vladimir Prus Date: Mon, 17 Nov 2008 12:34:19 +0000 Subject: [PATCH] Include group-id in thread-created notification. * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include group id in the output. --- gdb/ChangeLog | 7 +++++++ gdb/mi/mi-interp.c | 8 ++++++-- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.mi/mi-nonstop.exp | 2 +- gdb/testsuite/lib/mi-support.exp | 2 +- 5 files changed, 20 insertions(+), 4 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a224e30..b32b96c 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,12 @@ 2008-11-17 Vladimir Prus + Include group-id in thread-created notification. + + * mi/mi-interp.c (mi_new_thread, mi_thread_exit): Include + group id in the output. + +2008-11-17 Vladimir Prus + Notification for attach/detach. * inferior.c: Call the process observers. diff --git a/gdb/mi/mi-interp.c b/gdb/mi/mi-interp.c index 3121604..e05b1ad 100644 --- a/gdb/mi/mi-interp.c +++ b/gdb/mi/mi-interp.c @@ -293,7 +293,9 @@ mi_new_thread (struct thread_info *t) { struct mi_interp *mi = top_level_interpreter_data (); - fprintf_unfiltered (mi->event_channel, "thread-created,id=\"%d\"", t->num); + fprintf_unfiltered (mi->event_channel, + "thread-created,id=\"%d\",group-id=\"%d\"", + t->num, t->ptid.pid); gdb_flush (mi->event_channel); } @@ -302,7 +304,9 @@ mi_thread_exit (struct thread_info *t) { struct mi_interp *mi = top_level_interpreter_data (); target_terminal_ours (); - fprintf_unfiltered (mi->event_channel, "thread-exited,id=\"%d\"", t->num); + fprintf_unfiltered (mi->event_channel, + "thread-exited,id=\"%d\",group-id=\"%d\"", + t->num,t->ptid.pid); gdb_flush (mi->event_channel); } diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 29727bd..1c66e08 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-11-17 Vladimir Prus + + * gdb.mi/mi-nonstop.exp: Expect 'group-id' field. + * lib/mi-support.exp: Likewise. + 2008-11-16 Joel Brobecker * gdb.base/help.exp: Remove the "catch load" and "catch unload" diff --git a/gdb/testsuite/gdb.mi/mi-nonstop.exp b/gdb/testsuite/gdb.mi/mi-nonstop.exp index 0e6e130..4bf0d44 100644 --- a/gdb/testsuite/gdb.mi/mi-nonstop.exp +++ b/gdb/testsuite/gdb.mi/mi-nonstop.exp @@ -172,7 +172,7 @@ mi_gdb_test "-thread-select 2" "\\^done.*" "select first worker thread" # Since thread 2 is running, we need to set variable via another thread. mi_gdb_test "-gdb-set --thread 3 variable exit_first_thread=1" ".*\\^done" "ask the second thread to exit" gdb_expect { - -re ".*=thread-exited,id=\"2\"\r\n$" { + -re ".*=thread-exited,id=\"2\",group-id=\"\[0-9\]+\"\r\n$" { pass "wait for thread exit" } timeout { diff --git a/gdb/testsuite/lib/mi-support.exp b/gdb/testsuite/lib/mi-support.exp index 39a2982..39db896 100644 --- a/gdb/testsuite/lib/mi-support.exp +++ b/gdb/testsuite/lib/mi-support.exp @@ -816,7 +816,7 @@ proc mi_run_cmd {args} { send_gdb "220-exec-run $args\n" gdb_expect { - -re "220\\^running\r\n(\\*running,thread-id=\"\[^\"\]+\"\r\n|=thread-created,id=\"1\"\r\n)*${mi_gdb_prompt}" { + -re "220\\^running\r\n(\\*running,thread-id=\"\[^\"\]+\"\r\n|=thread-created,id=\"1\",group-id=\"\[0-9\]+\"\r\n)*${mi_gdb_prompt}" { } timeout { perror "Unable to start target" -- 2.7.4