--- libtirpc-0.1.7/src/svc_run.c.orig 2005-05-18 01:10:50.000000000 -0400 +++ libtirpc-0.1.7/src/svc_run.c 2007-07-09 12:52:23.000000000 -0400 @@ -51,14 +51,14 @@ svc_run() struct timeval timeout; extern rwlock_t svc_fd_lock; - timeout.tv_sec = 30; - timeout.tv_usec = 0; for (;;) { rwlock_rdlock(&svc_fd_lock); readfds = svc_fdset; cleanfds = svc_fdset; rwlock_unlock(&svc_fd_lock); + timeout.tv_sec = 30; + timeout.tv_usec = 0; switch (select(svc_maxfd+1, &readfds, NULL, NULL, &timeout)) { case -1: FD_ZERO(&readfds);