From 683f2885af8be6282b3a89b77b0bf06a616c0040 Mon Sep 17 00:00:00 2001 From: Vladimir Prus Date: Fri, 14 Mar 2008 17:21:08 +0000 Subject: Implement MI notification for new threads. * doc/observer.texi (new_thread): Document. * observer.sh: Forward declare struct thread_info. * thread.c (add_thread): Notify observer. * interps.h (interp_init_ftype): New parameter top_level. (interp_set): Likewise. (top_level_interpreter_data): Declare. * interps.c (interp_set): New parameter top_level. Pass it to interpreter's init function. Remember top level interpreter. (interpreter_exec_cmd): Adjust. (top_level_interpreter_data): New. * main.c (captured_main): Pass 1 for top_level parameter of interp_set. * cli/cli-interp.c (cli_interpreter_init): New parameter top_level. * tui/tui-interp.c (tui_init): New parameter top_level. * mi/mi-interp.c (mi_new_thread): New. (mi_interpreter_init): If top level, register observer for new threads. * Makefile.in (mi-interp.o, thread.o): Update dependencies. --- gdb/thread.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gdb/thread.c') diff --git a/gdb/thread.c b/gdb/thread.c index 40b7b3d..97facd2 100644 --- a/gdb/thread.c +++ b/gdb/thread.c @@ -39,6 +39,7 @@ #include #include #include "ui-out.h" +#include "observer.h" /* Definition of struct thread_info exported to gdbthread.h */ @@ -137,6 +138,8 @@ add_thread (ptid_t ptid) if (print_thread_events) printf_unfiltered (_("[New %s]\n"), target_pid_to_str (ptid)); + + observer_notify_new_thread (result); return result; } -- cgit v1.1