Fix 308341 vgdb should report process exit (or fatal signal)
patch from Mark Wielaard.
(with small modifications).
Also clarified some comments related to the resume reply.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13052 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/gdbserver_tests/gone.c b/gdbserver_tests/gone.c
new file mode 100644
index 0000000..53274e9
--- /dev/null
+++ b/gdbserver_tests/gone.c
@@ -0,0 +1,33 @@
+#include <signal.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+int
+main (int argc, char **argv)
+{
+ fprintf(stderr, "starting ...\n");
+
+ // Three ways of going away...
+ if (argc > 1)
+ {
+ // Explicit exit() with exit code.
+ if (strcmp (argv[1], "exit") == 0)
+ {
+ fprintf(stderr, "exiting ...\n");
+ exit (1);
+ }
+
+ // Get killed by a signal.
+ if (strcmp (argv[1], "abort") == 0)
+ {
+ fprintf(stderr, "aborting ...\n");
+ kill(getpid(), SIGABRT);
+ }
+ }
+
+ // And finally, just return from main with success.
+ fprintf(stderr, "returning ...\n");
+ return 0;
+}