fix data corruption caused by using wrong buffer

This commit is contained in:
clowwindy
2012-12-29 21:26:30 +08:00
parent 7ec67accc5
commit f036cc0a06
+7 -8
View File
@@ -98,15 +98,14 @@ static void server_recv_cb (EV_P_ ev_io *w, int revents) {
close_and_free_server(EV_A_ server);
return;
}
char *buf = remote->buf;
int *buf_len = &remote->buf_len;
if (server->stage != 5) {
buf = server->buf;
buf_len = &server->buf_len;
}
while (1) {
char *buf = remote->buf;
int *buf_len = &remote->buf_len;
if (server->stage != 5) {
buf = server->buf;
buf_len = &server->buf_len;
}
ssize_t r = recv(server->fd, buf, BUF_SIZE, 0);
if (r == 0) {