chiark / gitweb /
+ * In _beforeselect, global system failure now produces zero timeout.
authorian <ian>
Sun, 26 Mar 2000 14:52:57 +0000 (14:52 +0000)
committerian <ian>
Sun, 26 Mar 2000 14:52:57 +0000 (14:52 +0000)
@@ -1,4 +1,4 @@
-adns (0.8) BETA; urgency=low
+uadns (0.8) BETA; urgency=low

   * Spurious `server failure on unidentifiable query' warning suppressed.
   * install-sh (from autoconf 2.12 Debian r13) included.
@@ -7,6 +7,7 @@
   * Documented that adns_rr_info _rr_hostaddr ( ) for address list
     means permanent failure, and ? means temporary failure.
   * Typo (*now for now in _beforeselect description) in adns.h fixed.
+  * In _beforeselect, global system failure now produces zero timeout.

  --

changelog
src/event.c

index c67476c9ef364b70a6b7e3ac5d910f15e198decc..a6fe1958f93363dae185b8c3dda75a2ef5fe9824 100644 (file)
--- a/changelog
+++ b/changelog
@@ -1,4 +1,4 @@
-adns (0.8) BETA; urgency=low
+uadns (0.8) BETA; urgency=low
 
   * Spurious `server failure on unidentifiable query' warning suppressed.
   * install-sh (from autoconf 2.12 Debian r13) included.
@@ -7,6 +7,7 @@ adns (0.8) BETA; urgency=low
   * Documented that adns_rr_info _rr_hostaddr ( ) for address list
     means permanent failure, and ? means temporary failure.
   * Typo (*now for now in _beforeselect description) in adns.h fixed.
+  * In _beforeselect, global system failure now produces zero timeout.
 
  --
 
index a1641c630a1d0307d62fffc6f6e6c61e39a3844d..7c610c7d2100332cc6c25990c3dbee7df9580747 100644 (file)
@@ -531,7 +531,7 @@ void adns_beforeselect(adns_state ads, int *maxfd_io, fd_set *readfds_io,
   if (tv_mod && (!*tv_mod || (*tv_mod)->tv_sec || (*tv_mod)->tv_usec)) {
     /* The caller is planning to sleep. */
     adns__must_gettimeofday(ads,&now,&tv_nowbuf);
-    if (!now) goto xit;
+    if (!now) { inter_immed(tv_mod,tv_iobuf); goto xit; }
     adns__timeouts(ads, 1, tv_mod,tv_tobuf, *now);
   }
 
@@ -656,7 +656,7 @@ int adns_wait(adns_state ads,
              void **context_r) {
   int r, maxfd, rsel;
   fd_set readfds, writefds, exceptfds;
-  struct timeval tvbuf, *tvp;
+  struct timeval *now, nowbuf, tvbuf, *tvp;
   
   adns__consistency(ads,*query_io,cc_entex);
   for (;;) {