2007-05-06 20:53:16 +03:00
|
|
|
diff -ur db.old/common-channel.c db.dev/common-channel.c
|
|
|
|
--- db.old/common-channel.c 2007-02-22 17:17:15.000000000 +0100
|
|
|
|
+++ db.dev/common-channel.c 2007-05-06 19:50:19.154943528 +0200
|
2007-05-09 22:15:37 +03:00
|
|
|
@@ -309,15 +309,15 @@
|
2007-05-06 20:53:16 +03:00
|
|
|
&& (ERRFD_IS_WRITE(channel) || channel->errfd == FD_CLOSED)) {
|
|
|
|
send_msg_channel_eof(channel);
|
|
|
|
}
|
|
|
|
-
|
|
|
|
- /* And if we can't receive any more data from them either, close up */
|
|
|
|
- if (!channel->sent_close
|
|
|
|
- && channel->readfd == FD_CLOSED
|
|
|
|
- && (ERRFD_IS_WRITE(channel) || channel->errfd == FD_CLOSED)
|
|
|
|
- && !write_pending(channel)) {
|
|
|
|
- TRACE(("sending close, readfd is closed"))
|
|
|
|
- send_msg_channel_close(channel);
|
|
|
|
- }
|
2007-05-09 22:15:37 +03:00
|
|
|
+
|
|
|
|
+ /* And if we can't receive any more data from them either, close up (server only) */
|
|
|
|
+ if (!channel->sent_close
|
|
|
|
+ && channel->readfd == FD_CLOSED
|
|
|
|
+ && !ERRFD_IS_WRITE(channel)
|
|
|
|
+ && !write_pending(channel)) {
|
|
|
|
+ TRACE(("sending close, readfd is closed"))
|
|
|
|
+ send_msg_channel_close(channel);
|
|
|
|
+ }
|
2007-05-06 20:53:16 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
/* Check whether a deferred (EINPROGRESS) connect() was successful, and
|