[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [OSSTEST PATCH] ms-queuedaemon: Do not spin if client input is delayed/truncated
chan-read-data would spin if `read' returns early because of nonblocking mode. Check whether the return value is the empty string (which can only happen on eof or nonblocking lack of data, and we checked eof just before), and if so, simply return. The fileevent remains set up so we will be called again when more data arrives. (Deployment/testing note: this change is currently live in Cambridge, as I cowboyed it directly into ~osstest/daemons-testing.git, on observing this misbehaviour.) Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> --- tcl/daemonlib.tcl | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tcl/daemonlib.tcl b/tcl/daemonlib.tcl index 55bc385..972b5e2 100644 --- a/tcl/daemonlib.tcl +++ b/tcl/daemonlib.tcl @@ -166,6 +166,9 @@ proc chan-read-data {chan} { chan-destroy $chan return } + if {![string length $got]} { + return + } append data $got incr len -[string length $got] } -- 1.7.10.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |