2008-05-02 Andrew Stubbs * main.h (batch_silent): Declare. * event-top.c: Include main.h. (gdb_setup_readline): Remove extern batch_silent declaration. * infrun.c (normal_stop): Don't print source location when running in --batch-silent mode. Index: src2/gdb/infrun.c =================================================================== --- src2.orig/gdb/infrun.c 2008-05-02 10:34:13.000000000 +0100 +++ src2/gdb/infrun.c 2008-05-02 11:26:06.000000000 +0100 @@ -3171,7 +3171,10 @@ Further execution is probably impossible bpstat_print() contains the logic deciding in detail what to print, based on the event(s) that just occurred. */ - if (stop_print_frame) + /* If --batch-silent is enabled then there's no need to print the current + source location, and to try risks causing an error message about + missing source files. */ + if (stop_print_frame && !batch_silent) { int bpstat_ret; int source_flag; Index: src2/gdb/event-top.c =================================================================== --- src2.orig/gdb/event-top.c 2008-03-14 19:55:51.000000000 +0000 +++ src2/gdb/event-top.c 2008-05-02 11:24:30.000000000 +0100 @@ -31,6 +31,7 @@ #include #include "exceptions.h" #include "cli/cli-script.h" /* for reset_command_nest_depth */ +#include "main.h" /* For dont_repeat() */ #include "gdbcmd.h" @@ -1084,8 +1085,6 @@ gdb_setup_readline (void) that the sync setup is ALL done in gdb_init, and we would only mess it up here. The sync stuff should really go away over time. */ - extern int batch_silent; - if (!batch_silent) gdb_stdout = stdio_fileopen (stdout); gdb_stderr = stdio_fileopen (stderr); Index: src2/gdb/main.h =================================================================== --- src2.orig/gdb/main.h 2008-01-01 22:53:12.000000000 +0000 +++ src2/gdb/main.h 2008-05-02 11:24:05.000000000 +0100 @@ -33,5 +33,6 @@ extern int gdb_main (struct captured_mai /* From main.c. */ extern int return_child_result; extern int return_child_result_value; +extern int batch_silent; #endif