]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
Catch exception in lib/gdbserver-support.exp:gdb_exit
authorYao Qi <yao.qi@linaro.org>
Mon, 13 Apr 2015 11:36:56 +0000 (12:36 +0100)
committerYao Qi <yao.qi@linaro.org>
Mon, 13 Apr 2015 14:46:11 +0000 (15:46 +0100)
commit2efe15c42872987ed5123f3a3952c8b379554840
treeb1058b5c1a0d81ec1839b67ace9491787ff743f4
parentf0bf6bfd70fd550a0b01f8bef938a205702b0465
Catch exception in lib/gdbserver-support.exp:gdb_exit

I see the error when I run gdb-sigterm.exp with native-gdbserver
on x86_64-linux.

infrun: prepare_to_wait^M
Cannot execute this command while the target is running.^M
Use the "interrupt" command to stop the target^M
and then try again.^M
gdb.base/gdb-sigterm.exp: expect eof #0: got eof
gdb.base/gdb-sigterm.exp: expect eof #0: stepped 12 times
ERROR OCCURED: : spawn id exp8 not open
    while executing
"expect {
-i exp8 -timeout 10
            -re "$gdb_prompt $" {
                exp_continue
            }
            -i "$server_spawn_id" eof {
                wait -i $expect_out(spawn_id)
                unse..."
    ("uplevel" body line 1)
    invoked from within

In gdb-sigterm.exp, SIGTERM is sent to GDB and it exits.  However,
Dejagnu or tcl doesn't know this.

This patch is to catch the exception, but error messages are still
shown in the console and gdb.log.  In order to avoid this, we also
replace gdb_expect with expect.

gdb/testsuite:

2015-04-13  Yao Qi  <yao.qi@linaro.org>

* lib/gdbserver-support.exp (gdb_exit): Catch exception
and use expect instead of gdb_expect.
gdb/testsuite/ChangeLog
gdb/testsuite/lib/gdbserver-support.exp