Fix gdbserver/MI testing regression
authorPedro Alves <palves@redhat.com>
Thu, 30 Jun 2016 10:55:22 +0000 (11:55 +0100)
committerPedro Alves <palves@redhat.com>
Thu, 30 Jun 2016 10:59:19 +0000 (11:59 +0100)
commit038d48680941f014349256aeb7bab14b3f01d58e
treea21e72610b0dde63aeb3b76d67898fc21291e416
parent994e9c834d916af85e0fe0e8c3e18259aa4be389
Fix gdbserver/MI testing regression

Commit 51f77c3704a6 ("Add testing infrastruture bits for running with
MI on a separate UI") broke MI testing with native-gdbserver:

 $ make check RUNTESTFLAGS="--target_board=native-gdbserver mi-var-child.exp"
 ...
 Running .../src/binutils-gdb/gdb/testsuite/gdb.mi/mi-var-child.exp ...
 can't unset "inferior_spawn_id": no such variable
     while executing
 "unset inferior_spawn_id"
     (procedure "close_gdbserver" line 20)
     invoked from within
 "close_gdbserver"
 ...

When testing with gdbserver, gdb_exit is overridden with a special
version that calls close_gdbserver, which clears inferior_spawn_id.
The problem is that the commit mentioned above made
gdb_exit/mi_gdb_exit clear inferior_spawn_id too, and clearing a
non-existing variable is a tcl error.

Since gdb_exit/mi_gdb_exit always clears inferior_spawn_id now, the
fix is simply to stop clearing it in close_gdbserver.

gdb/testsuite/
2016-06-30  Pedro Alves  <palves@redhat.com>

* lib/gdbserver-support.exp (close_gdbserver, gdb_exit): Don't
unset inferior_spawn_id.
gdb/testsuite/ChangeLog
gdb/testsuite/lib/gdbserver-support.exp