This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] testsuite: Fix a `server_pid' access crash in gdb.server/server-kill.exp
- From: Maciej W.Rozycki <macro at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 15 May 2018 14:55:32 -0000
- Subject: [binutils-gdb] testsuite: Fix a `server_pid' access crash in gdb.server/server-kill.exp
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=0726fcc61a8b7c943de513ec598b2189c5f67715
commit 0726fcc61a8b7c943de513ec598b2189c5f67715
Author: Maciej W. Rozycki <macro@mips.com>
Date: Tue May 15 15:54:36 2018 +0100
testsuite: Fix a `server_pid' access crash in gdb.server/server-kill.exp
Fix a commit f90183d7e31b ("Get GDBserver pid on remote target") bug and
correctly handle the case where the PID of `gdbserver' could not have
been retrieved. If that happens, $server_pid is unset causing:
FAIL: gdb.server/server-kill.exp: p server_pid
ERROR: tcl error sourcing .../gdb/testsuite/gdb.server/server-kill.exp.
ERROR: can't read "server_pid": no such variable
while executing
"if {$server_pid == "" } {
return -1
}"
(file ".../gdb/testsuite/gdb.server/server-kill.exp" line 49)
invoked from within
"source .../gdb/testsuite/gdb.server/server-kill.exp"
("uplevel" body line 1)
invoked from within
"uplevel #0 source .../gdb/testsuite/gdb.server/server-kill.exp"
invoked from within
"catch "uplevel #0 source $test_file_name""
Verify that the variable exists then rather than trying to access it.
gdb/testsuite/
* gdb.server/server-kill.exp: Verify whether `server_pid' exists
rather then trying to access it in determining whether the PID
of `gdbserver' could have been retrieved.
Diff:
---
gdb/testsuite/ChangeLog | 6 ++++++
gdb/testsuite/gdb.server/server-kill.exp | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 9fc54c0..b18d4b6 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2018-05-15 Maciej W. Rozycki <macro@mips.com>
+
+ * gdb.server/server-kill.exp: Verify whether `server_pid' exists
+ rather then trying to access it in determining whether the PID
+ of `gdbserver' could have been retrieved.
+
2018-05-08 Andrew Burgess <andrew.burgess@embecosm.com>
* gdb.arch/amd64-init-x87-values.S: New file.
diff --git a/gdb/testsuite/gdb.server/server-kill.exp b/gdb/testsuite/gdb.server/server-kill.exp
index 0701d5f..c110f3a 100644
--- a/gdb/testsuite/gdb.server/server-kill.exp
+++ b/gdb/testsuite/gdb.server/server-kill.exp
@@ -46,7 +46,7 @@ gdb_test_multiple $test $test {
}
}
-if {$server_pid == "" } {
+if ![info exists server_pid] {
return -1
}