diff options
Diffstat (limited to 'nchan.c')
-rw-r--r-- | nchan.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -28,7 +28,7 @@ */ #include "includes.h" -RCSID("$Id: nchan.c,v 1.9 2000/05/07 02:03:16 damien Exp $"); +RCSID("$Id: nchan.c,v 1.10 2000/05/09 01:03:01 damien Exp $"); #include "ssh.h" @@ -107,6 +107,10 @@ chan_read_failed_12(Channel *c) debug("channel %d: input open -> drain", c->self); chan_shutdown_read(c); c->istate = CHAN_INPUT_WAIT_DRAIN; + if (buffer_len(&c->input) == 0) { + debug("channel %d: input: no drain shortcut", c->self); + chan_ibuf_empty(c); + } break; default: error("channel %d: internal error: we do not read, but chan_read_failed for istate %d", |