dejagnu
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Separating stdout and stderr


From: Ben Elliston
Subject: Re: Separating stdout and stderr
Date: Sun, 27 Mar 2016 01:29:52 +1100
User-agent: Mutt/1.5.23 (2014-03-12)

I found the problem. The sanitiser execution tests produce a lot of
output (~20KB on stderr).  Somtimes, when EOF is matched in
standard_wait, there are unmatched characters left in the expect
buffer.  These need to be appended to $output.  This has probably
escaped us until now because execution test output has been very
short.

I'll do some more testing before checking this in.

Cheers,
Ben


2016-03-27  Ben Elliston  <address@hidden>

        * lib/remote.exp (standard_wait): Append any trailing characters
        to $output that may be still in $expect_out(buffer) when eof is
        matched. Remove arbitrary limitation in the ".+" matching case,
        similar to the change to local_exec on 2016-02-17.

diff --git a/lib/remote.exp b/lib/remote.exp
index e0d9d18..029d934 100644
--- a/lib/remote.exp
+++ b/lib/remote.exp
@@ -1122,17 +1122,15 @@ proc standard_wait { dest timeout } {
     remote_expect $dest $timeout {
        -re ".+" {
            append output $expect_out(buffer)
-           if { [string length $output] > 512000 } {
-               remote_close $dest
-               set status 1
-           } else {
-               exp_continue -continue_timer
-           }
+           exp_continue -continue_timer
        }
        timeout {
            warning "program timed out."
        }
        eof {
+           # There may be trailing characters in the buffer.
+           # Append them, too.
+           append output $expect_out(buffer)
            if {[board_info $dest exists fileid_origid]} {
                global board_info
 

Attachment: signature.asc
Description: Digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]