13 lines
591 B
Diff
13 lines
591 B
Diff
|
diff -urN dropbear-0.47.orig/common-channel.c dropbear-0.47/common-channel.c
|
||
|
--- dropbear-0.47.orig/common-channel.c 2005-12-09 06:42:31.000000000 +0100
|
||
|
+++ dropbear-0.47/common-channel.c 2006-02-05 00:03:37.000000000 +0100
|
||
|
@@ -377,7 +377,7 @@
|
||
|
cbuf_incrread(cbuf, len);
|
||
|
channel->recvdonelen += len;
|
||
|
|
||
|
- if (fd == channel->writefd && len == maxlen && channel->recveof) {
|
||
|
+ if (fd == channel->writefd && len == maxlen && channel->recveof && cbuf_getused(channel->writebuf) == 0) {
|
||
|
/* Check if we're closing up */
|
||
|
closewritefd(channel);
|
||
|
TRACE(("leave writechannel: recveof set"))
|