* mi/mi-main.c (mi_cmd_gdb_exit): Flush raw_stdout.

This commit is contained in:
Vladimir Prus 2009-12-21 10:02:06 +00:00
parent 9e19b45e2e
commit a6b29f8772
4 changed files with 17 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2009-12-21 Vladimir Prus <vladimir@codesourcery.com>
* mi/mi-main.c (mi_cmd_gdb_exit): Flush raw_stdout.
2009-12-21 Vladimir Prus <vladimir@codesourcery.com>
PR gdb/10884

View File

@ -1,3 +1,8 @@
2009-12-21 Vladimir Prus <vladimir@codesourcery.com>
* gdb.texinfo (GDB/MI Miscellaneous Commands): Clarify that
-gdb-exit behaviour.
2009-12-20 Joel Brobecker <brobecker@adacore.com>
* gpl.texi: Update to version 3 of the GPL.

View File

@ -21955,6 +21955,13 @@ Quitting @value{GDBN} just prints the result class @samp{^exit}.
<- ^exit
@end smallexample
Please note that @samp{^exit} is printed immediately, but it might
take some time for @value{GDBN} to actually exit. During that time, @value{GDBN}
performs necessary cleanups, including killing programs being debugged
or disconnecting from debug hardware, so the frontend should wait till
@value{GDBN} exits and should only forcibly kill @value{GDBN} if it
fails to exit in reasonable time.
@subheading A Bad Command
Here's what happens if you pass a non-existent command:

View File

@ -111,6 +111,7 @@ mi_cmd_gdb_exit (char *command, char **argv, int argc)
fputs_unfiltered (current_token, raw_stdout);
fputs_unfiltered ("^exit\n", raw_stdout);
mi_out_put (uiout, raw_stdout);
gdb_flush (raw_stdout);
/* FIXME: The function called is not yet a formal libgdb function. */
quit_force (NULL, FROM_TTY);
}