diff options
author | Pedro Alves <palves@redhat.com> | 2015-04-16 14:26:59 +0100 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2015-04-16 14:26:59 +0100 |
commit | 1ca99c4299f4deed8765fbb1eb4f9aea40d919b6 (patch) | |
tree | 45d6fada01823ad1b70d0f1599ba80a242f0882c | |
parent | 8550d3b32f4ac17bdb9e4768bb905da181b77ded (diff) | |
download | gdb-1ca99c4299f4deed8765fbb1eb4f9aea40d919b6.zip gdb-1ca99c4299f4deed8765fbb1eb4f9aea40d919b6.tar.gz gdb-1ca99c4299f4deed8765fbb1eb4f9aea40d919b6.tar.bz2 |
Fix gdbserver_reconnect_p handling
Commit 6423214f (testsuite: Don't use expect_background to reap
gdbserver) broke a couple tests that set gdbserver_reconnect_p and
restart gdb before reconnecting, because a gdb_exit (e.g., through
clean_restart) exits gdbserver unconditionally.
Fixes, with --target_board=native-gdbserver:
-FAIL: gdb.trace/mi-tracepoint-changed.exp: reconnect: break-info 1
+PASS: gdb.trace/mi-tracepoint-changed.exp: reconnect: tracepoint created
+PASS: gdb.trace/mi-tracepoint-changed.exp: reconnect: tracepoint on marker is installed
+PASS: gdb.trace/mi-tracepoint-changed.exp: reconnect: break-info 1
-FAIL: gdb.trace/mi-tsv-changed.exp: upload: tsv1 created
-FAIL: gdb.trace/mi-tsv-changed.exp: upload: tsv2 created
+PASS: gdb.trace/mi-tsv-changed.exp: upload: tsv1 created
+PASS: gdb.trace/mi-tsv-changed.exp: upload: tsv2 created
gdb/testsuite/
2015-04-16 Pedro Alves <palves@redhat.com>
* lib/gdbserver-support.exp (gdb_exit): If gdbserver_reconnect_p
is set, don't exit gdbserver.
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/lib/gdbserver-support.exp | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 0f2d552..7739325 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-04-16 Pedro Alves <palves@redhat.com> + + * lib/gdbserver-support.exp (gdb_exit): If gdbserver_reconnect_p + is set, don't exit gdbserver. + 2015-04-16 Andreas Arnez <arnez@linux.vnet.ibm.com> * gdb.arch/s390-vregs.S (change_vrs): Replace exrl by an diff --git a/gdb/testsuite/lib/gdbserver-support.exp b/gdb/testsuite/lib/gdbserver-support.exp index b3140c2..6c3401c 100644 --- a/gdb/testsuite/lib/gdbserver-support.exp +++ b/gdb/testsuite/lib/gdbserver-support.exp @@ -351,6 +351,14 @@ if { [info procs gdbserver_gdb_exit] == "" } { proc gdb_exit {} { global gdb_spawn_id server_spawn_id inferior_spawn_id global gdb_prompt + global gdbserver_reconnect_p + + # Leave GDBserver running if we're exiting GDB in order to + # reconnect to the same instance of GDBserver again. + if {[info exists gdbserver_reconnect_p] && $gdbserver_reconnect_p} { + gdbserver_orig_gdb_exit + return + } if {[info exists gdb_spawn_id] && [info exists server_spawn_id]} { # GDB may be terminated in an expected way or an unexpected way, |