[gdb/testsuite] Fix find_core_file for core named core
authorTom de Vries <tdevries@suse.de>
Tue, 8 Nov 2022 15:28:11 +0000 (16:28 +0100)
committerTom de Vries <tdevries@suse.de>
Tue, 8 Nov 2022 15:28:11 +0000 (16:28 +0100)
With test-case gdb.base/bigcore.exp I run into:
...
(gdb) PASS: gdb.base/bigcore.exp: get inferior pid
signal SIGABRT^M
Continuing with signal SIGABRT.^M
^M
Program terminated with signal SIGABRT, Aborted.^M
The program no longer exists.^M
(gdb) PASS: gdb.base/bigcore.exp: signal SIGABRT
UNTESTED: gdb.base/bigcore.exp: can't generate a core file
...
due to find_core_file returning "".

There is a core file name core:
...
$ ls ./outputs/gdb.base/bigcore
bigcore  bigcore.corefile  core  gdb.cmd.1  gdb.in.1  gdbserver.cmd.1
...
but it's not found.

The problem is this statement:
...
    lappend files [list ${::testfile}.core core]
...
which adds a single list item "${::testfile}.core core".

Fix this in the most readable way:
...
    lappend files ${::testfile}.core
    lappend files core
...

Tested on x86_64-linux.

gdb/testsuite/lib/gdb.exp

index e2cda30b95a06a5e5b5cfb3534f47f77e4e65822..3e0a46445cacae8ddcb4b621af0cdbdf970decdc 100644 (file)
@@ -7736,7 +7736,8 @@ proc find_core_file {pid} {
     } elseif {$pid != -1} {
        lappend files core.$pid
     }
-    lappend files [list ${::testfile}.core core]
+    lappend files ${::testfile}.core
+    lappend files core
 
     foreach file $files {
        if {![is_remote host]} {