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