summaryrefslogtreecommitdiff
path: root/usr.bin/ssh
diff options
context:
space:
mode:
authorMarkus Friedl <markus@cvs.openbsd.org>2000-04-29 16:06:09 +0000
committerMarkus Friedl <markus@cvs.openbsd.org>2000-04-29 16:06:09 +0000
commit04892e54e67e64f22e0c8c95f12702d7c4e1cb7f (patch)
tree16978de29b1944aeb8dc7baff20e189f9eb37911 /usr.bin/ssh
parent445e05e2e6eacf9331b6482aaf38cb85c68e236c (diff)
don't call chan_write_failed() if we are not writing
Diffstat (limited to 'usr.bin/ssh')
-rw-r--r--usr.bin/ssh/session.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/usr.bin/ssh/session.c b/usr.bin/ssh/session.c
index e63889bedca..0f5fb9e1da0 100644
--- a/usr.bin/ssh/session.c
+++ b/usr.bin/ssh/session.c
@@ -8,7 +8,7 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: session.c,v 1.7 2000/04/28 08:10:20 markus Exp $");
+RCSID("$OpenBSD: session.c,v 1.8 2000/04/29 16:06:08 markus Exp $");
#include "xmalloc.h"
#include "ssh.h"
@@ -1401,7 +1401,8 @@ session_exit_message(Session *s, int status)
* Note that we must not call 'chan_read_failed', since there could
* be some more data waiting in the pipe.
*/
- chan_write_failed(c);
+ if (c->ostate != CHAN_OUTPUT_CLOSED)
+ chan_write_failed(c);
s->chanid = -1;
}