if(sockets == NULL) return;
fd_set fds;
struct timeval timeout;
- struct ClientSocket *sock;
+ struct ClientSocket *sock, *next;
int ret = 0, bytes, i;
FD_ZERO(&fds);
timeout.tv_usec = 0;
ret = select(ret + 1, &fds, NULL, NULL, &timeout);
if(ret == 0) return;
- for (sock = sockets->data; sock; sock = sock->next) {
+ for (sock = sockets->data; sock; sock = next) {
+ next = sock->next;
if((sock->flags & SOCKET_FLAG_CONNECTED) && FD_ISSET(sock->sock, &fds)) {
if(sock->bufferpos != 0) {
if(!(sock->flags & SOCKET_FLAG_HAVE_SSL) || (bytes = ssl_read(sock, buffer, sizeof(buffer))) == -2) {