diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/idevicedebugserverproxy.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/tools/idevicedebugserverproxy.c b/tools/idevicedebugserverproxy.c index 405a5a4..15e8deb 100644 --- a/tools/idevicedebugserverproxy.c +++ b/tools/idevicedebugserverproxy.c | |||
@@ -121,15 +121,8 @@ static void* connection_handler(void* data) | |||
121 | int dtimeout = 1; | 121 | int dtimeout = 1; |
122 | 122 | ||
123 | while (!quit_flag) { | 123 | while (!quit_flag) { |
124 | fd_set read_fds = fds; | 124 | ssize_t n = socket_receive_timeout(client_fd, buf, bufsize, 0, 1); |
125 | struct timeval tv = { 0, 1000 }; | 125 | if (n != -ETIMEDOUT) { |
126 | int ret_sel = select(client_fd+1, &read_fds, NULL, NULL, &tv); | ||
127 | if (ret_sel < 0) { | ||
128 | perror("select"); | ||
129 | break; | ||
130 | } | ||
131 | if (FD_ISSET(client_fd, &read_fds)) { | ||
132 | ssize_t n = socket_receive(client_fd, buf, bufsize); | ||
133 | if (n < 0) { | 126 | if (n < 0) { |
134 | fprintf(stderr, "Failed to read from client fd: %s\n", strerror(-n)); | 127 | fprintf(stderr, "Failed to read from client fd: %s\n", strerror(-n)); |
135 | break; | 128 | break; |