Bug http://bugs.busybox.net/view.php?id=723 - initialize tv1 the first time
through the loop.
diff --git a/networking/zcip.c b/networking/zcip.c
index e25f017..836cb78 100644
--- a/networking/zcip.c
+++ b/networking/zcip.c
@@ -307,20 +307,20 @@
 		fds[0].revents = 0;
 
 		// poll, being ready to adjust current timeout
-		if (timeout > 0) {
-			gettimeofday(&tv1, NULL);
-			tv1.tv_usec += (timeout % 1000) * 1000;
-			while (tv1.tv_usec > 1000000) {
-				tv1.tv_usec -= 1000000;
-				tv1.tv_sec++;
-			}
-			tv1.tv_sec += timeout / 1000;
-		} else if (timeout == 0) {
+		if (!timeout) {
 			timeout = ms_rdelay(PROBE_WAIT);
 			// FIXME setsockopt(fd, SO_ATTACH_FILTER, ...) to
 			// make the kernel filter out all packets except
 			// ones we'd care about.
 		}
+		gettimeofday(&tv1, NULL);
+		tv1.tv_usec += (timeout % 1000) * 1000;
+		while (tv1.tv_usec > 1000000) {
+			tv1.tv_usec -= 1000000;
+			tv1.tv_sec++;
+		}
+		tv1.tv_sec += timeout / 1000;
+	
 		VDBG("...wait %ld %s nprobes=%d, nclaims=%d\n",
 				timeout, intf, nprobes, nclaims);
 		switch (poll(fds, 1, timeout)) {