* lib/gdb.exp (gdb_expect): Of all the timeouts provided always

select the largest.
This commit is contained in:
Maciej W. Rozycki
2008-02-29 15:40:20 +00:00
parent 7b2185f945
commit 2f34202fde
2 changed files with 35 additions and 20 deletions

View File

@ -1,3 +1,8 @@
2008-02-29 Maciej W. Rozycki <macro@mips.com>
* lib/gdb.exp (gdb_expect): Of all the timeouts provided always
select the largest.
2008-02-28 Daniel Jacobowitz <dan@codesourcery.com> 2008-02-28 Daniel Jacobowitz <dan@codesourcery.com>
* gdb.base/annota1.exp, gdb.cp/annota2.exp: Update for fewer * gdb.base/annota1.exp, gdb.cp/annota2.exp: Update for fewer

View File

@ -1776,12 +1776,14 @@ proc send_gdb { string } {
proc gdb_expect { args } { proc gdb_expect { args } {
if { [llength $args] == 2 && [lindex $args 0] != "-re" } { if { [llength $args] == 2 && [lindex $args 0] != "-re" } {
set gtimeout [lindex $args 0]; set atimeout [lindex $args 0];
set expcode [list [lindex $args 1]]; set expcode [list [lindex $args 1]];
} else { } else {
set expcode $args;
}
upvar timeout timeout; upvar timeout timeout;
set expcode $args;
if [target_info exists gdb,timeout] { if [target_info exists gdb,timeout] {
if [info exists timeout] { if [info exists timeout] {
if { $timeout < [target_info gdb,timeout] } { if { $timeout < [target_info gdb,timeout] } {
@ -1798,12 +1800,20 @@ proc gdb_expect { args } {
global timeout; global timeout;
if [info exists timeout] { if [info exists timeout] {
set gtimeout $timeout; set gtimeout $timeout;
}
}
if [info exists atimeout] {
if { ![info exists gtimeout] || $gtimeout < $atimeout } {
set $gtimeout $atimeout;
}
} else { } else {
if ![info exists gtimeout] {
# Eeeeew. # Eeeeew.
set gtimeout 60; set gtimeout 60;
} }
} }
}
global suppress_flag; global suppress_flag;
global remote_suppress_flag; global remote_suppress_flag;
if [info exists remote_suppress_flag] { if [info exists remote_suppress_flag] {