summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkrw <krw>2014-07-13 20:51:08 +0000
committerkrw <krw>2014-07-13 20:51:08 +0000
commit2b67907176805e3df5bd913174617d768277bfff (patch)
tree4adc5c69a3b99ea1b4d45d898ba93ed94af0cb88
parentf117c7d94a2abb0561540a1fe33dd729b1cb8b34 (diff)
An EOF is a good reason to close a connection.
ok nicm@
-rw-r--r--client.c2
-rw-r--r--server-client.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/client.c b/client.c
index ec63fc07..ab7847fe 100644
--- a/client.c
+++ b/client.c
@@ -469,7 +469,7 @@ client_callback(unused int fd, short events, void *data)
}
if (events & EV_WRITE) {
- if (msgbuf_write(&client_ibuf.w) < 0 && errno != EAGAIN)
+ if (msgbuf_write(&client_ibuf.w) <= 0 && errno != EAGAIN)
goto lost_server;
}
diff --git a/server-client.c b/server-client.c
index 1ef3f311..5616115c 100644
--- a/server-client.c
+++ b/server-client.c
@@ -224,7 +224,7 @@ server_client_callback(int fd, short events, void *data)
return;
if (fd == c->ibuf.fd) {
- if (events & EV_WRITE && msgbuf_write(&c->ibuf.w) < 0 &&
+ if (events & EV_WRITE && msgbuf_write(&c->ibuf.w) <= 0 &&
errno != EAGAIN)
goto client_lost;