4743e10
diff -up cups-1.5b1/cups/http-addr.c.res_init cups-1.5b1/cups/http-addr.c
4743e10
--- cups-1.5b1/cups/http-addr.c.res_init	2011-04-16 01:38:13.000000000 +0200
4743e10
+++ cups-1.5b1/cups/http-addr.c	2011-05-24 15:56:50.000000000 +0200
4743e10
@@ -256,7 +256,8 @@ httpAddrLookup(
ac3f598
 
ac3f598
     if (error)
ac3f598
     {
ac3f598
-      if (error == EAI_FAIL)
ac3f598
+      if (error == EAI_FAIL || error == EAI_AGAIN || error == EAI_NODATA ||
ac3f598
+          error == EAI_NONAME)
ac3f598
         cg->need_res_init = 1;
ac3f598
 
ac3f598
       return (httpAddrString(addr, name, namelen));
4743e10
diff -up cups-1.5b1/cups/http-addrlist.c.res_init cups-1.5b1/cups/http-addrlist.c
4743e10
--- cups-1.5b1/cups/http-addrlist.c.res_init	2011-05-20 05:49:49.000000000 +0200
4743e10
+++ cups-1.5b1/cups/http-addrlist.c	2011-05-24 15:56:50.000000000 +0200
4743e10
@@ -386,7 +386,8 @@ httpAddrGetList(const char *hostname,	/*
eaed78f
 
eaed78f
       freeaddrinfo(results);
eaed78f
     }
eaed78f
-    else if (error == EAI_FAIL)
ac3f598
+    else if (error == EAI_FAIL || error == EAI_AGAIN || error == EAI_NODATA ||
ac3f598
+             error == EAI_NONAME)
eaed78f
       cg->need_res_init = 1;
eaed78f
 
eaed78f
 #else