From 1c67496a1c7f0f99909477030b2d4ea74d72a5b8 Mon Sep 17 00:00:00 2001 From: lqs Date: Wed, 8 Mar 2017 21:24:14 +0800 Subject: [PATCH] fix bugs --- src/redir.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/redir.c b/src/redir.c index 2a25cd35..86958885 100644 --- a/src/redir.c +++ b/src/redir.c @@ -566,12 +566,12 @@ remote_send_cb(EV_P_ ev_io *w, int revents) || errno == EWOULDBLOCK) { ev_io_start(EV_A_ & remote_send_ctx->io); ev_timer_start(EV_A_ & remote_send_ctx->watcher); - return; } else { ERROR("connect"); close_and_free_remote(EV_A_ remote); close_and_free_server(EV_A_ server); } + return; } } else { s = send(remote->fd, remote->buf->data + remote->buf->idx, @@ -590,6 +590,7 @@ remote_send_cb(EV_P_ ev_io *w, int revents) // partly sent, move memory, wait for the next time to send remote->buf->len -= s; remote->buf->idx += s; + ev_io_start(EV_A_ & remote_send_ctx->io); return; } else { // all sent out, wait for reading