Browse Source

Allow timeout to reach zero in read_socket_line for one non-blocking read

master
Con Kolivas 9 years ago
parent
commit
137136648c
  1. 4
      src/ckpool.c

4
src/ckpool.c

@ -521,7 +521,7 @@ int read_socket_line(connsock_t *cs, float *timeout)
tv_time(&start);
rewait:
if (*timeout <= 0) {
if (*timeout < 0) {
LOGDEBUG("Timed out in read_socket_line");
ret = 0;
goto out;
@ -550,7 +550,7 @@ rewait:
if (eom)
break;
/* Have we used up all the timeout yet? */
if (*timeout > 0 && (errno == EAGAIN || errno == EWOULDBLOCK || !ret))
if (*timeout >= 0 && (errno == EAGAIN || errno == EWOULDBLOCK || !ret))
goto rewait;
LOGERR("Failed to recv in read_socket_line");
goto out;

Loading…
Cancel
Save