diff options
author | Bob Manson <manson@cygnus> | 1997-03-01 04:50:01 +0000 |
---|---|---|
committer | Bob Manson <manson@cygnus> | 1997-03-01 04:50:01 +0000 |
commit | 847e232af6adf4d21eb51ee396f914de1395da7e (patch) | |
tree | bc282f3a3512619007ad809feb3d8d64dfa1a8e9 /gdb/testsuite/config/monitor.exp | |
parent | 066cc4a5b0a995df162d233315711cdefaf168d1 (diff) | |
download | binutils-847e232af6adf4d21eb51ee396f914de1395da7e.zip binutils-847e232af6adf4d21eb51ee396f914de1395da7e.tar.gz binutils-847e232af6adf4d21eb51ee396f914de1395da7e.tar.bz2 |
* config/monitor.exp: Detect the "Couldn't establish connection"
message from GDB.
one of many, presumably.
Diffstat (limited to 'gdb/testsuite/config/monitor.exp')
-rw-r--r-- | gdb/testsuite/config/monitor.exp | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/gdb/testsuite/config/monitor.exp b/gdb/testsuite/config/monitor.exp index facb5be..a2863b2 100644 --- a/gdb/testsuite/config/monitor.exp +++ b/gdb/testsuite/config/monitor.exp @@ -36,7 +36,7 @@ proc gdb_target_monitor { } { return -1; } if [target_info exists baud] { - send_gdb "set remotebaud [target_info baud]\n" + gdb_test "set remotebaud [target_info baud]" "" "" } if [target_info exists netport] { set serialport "[target_info netport]" @@ -47,25 +47,33 @@ proc gdb_target_monitor { } { for {set j 1} {$j <= 2} {incr j} { for {set i 1} {$i <= 3} {incr i} { send_gdb "target $targetname $serialport\n" - expect { - -re "Remote MIPS debugging.*" { + gdb_expect { + -re "A program is being debugged already.*ill it.*y or n. $" { + send_gdb "y\n"; + exp_continue; + } + -re ".*Couldn't establish connection to remote.*$gdb_prompt" { + verbose "Connection failed" + } + -re "Remote MIPS debugging.*$gdb_prompt" { verbose "Set target to $targetname" return } - -re "Remote debugging using $serialport.*" { + -re "Remote debugging using $serialport.*$gdb_prompt" { verbose "Set target to $targetname" return } - -re "Remote target $targetname connected to.*" { + -re "Remote target $targetname connected to.*$gdb_prompt" { verbose "Set target to $targetname" return } - -re "Connection refused" { + -re "Connection refused.*$gdb_prompt" { verbose "Connection refused by remote target. Pausing, and trying again." sleep 30 continue } - timeout { + timeout { + send_gdb ""; break } } @@ -76,8 +84,7 @@ proc gdb_target_monitor { } { } perror "Couldn't set target for $targetname, port is $serialport." - cleanup - exit $exit_status + return -1; } # @@ -107,18 +114,11 @@ proc gdb_load { arg } { send_gdb "load $arg\n" set timeout 1000 verbose "Timeout is now $timeout seconds" 2 - expect { + gdb_expect { -re ".*$gdb_prompt $" { - if { $verbose > 1 } { - send_user "Loaded $arg into $GDB\n" - } + verbose "Loaded $arg into $GDB\n" return 1 } - -re "$gdb_prompt $" { - if { $verbose > 1 } { - perror "GDB couldn't load." - } - } timeout { if { $verbose > 1 } { perror "Timed out trying to load $arg." |