]> Pileus Git - ~andy/fetchmail/commitdiff
Don't crap out when there are no servers.
authorEric S. Raymond <esr@thyrsus.com>
Fri, 6 Jul 2001 04:02:10 +0000 (04:02 -0000)
committerEric S. Raymond <esr@thyrsus.com>
Fri, 6 Jul 2001 04:02:10 +0000 (04:02 -0000)
svn path=/trunk/; revision=3402

fetchmail.c

index bac5a2f70020c8bbcc41a543b50a97afc492369d..5b8c28ea883d9b2bc71589bedf918cb623758f91 100644 (file)
@@ -1180,6 +1180,7 @@ static int load_params(int argc, char **argv, int optind)
                        memcpy(ctl->server.trueaddr, 
                               namerec->h_addr_list[0],
                               namerec->h_length);
+                       ctl->wedged = FALSE;
                    }
 #else
                    ctl->server.truename = xstrdup(ctl->server.queryname);
@@ -1274,15 +1275,18 @@ static int load_params(int argc, char **argv, int optind)
      * If all connections are wedged due to DNS errors, quit.  This is
      * important for the common case that you just have one connection.
      */
-    st = PS_DNS;
-    for (ctl = querylist; ctl; ctl = ctl->next)
-       if (!ctl->wedged)
-           st = 0;
-    if (st == PS_DNS)
+    if (querylist)
     {
-       (void) fprintf(stderr,
-                      _("all mailserver name lookups failed, exiting\n"));
-       exit(PS_DNS);
+       st = PS_DNS;
+       for (ctl = querylist; ctl; ctl = ctl->next)
+           if (!ctl->wedged)
+               st = 0;
+       if (st == PS_DNS)
+       {
+           (void) fprintf(stderr,
+                          _("all mailserver name lookups failed, exiting\n"));
+           exit(PS_DNS);
+       }
     }
 
     return(implicitmode);