Tim Waugh ac3f59
diff -up cups-1.4.6/cups/http-addr.c.res_init cups-1.4.6/cups/http-addr.c
Tim Waugh ac3f59
--- cups-1.4.6/cups/http-addr.c.res_init	2009-04-20 22:37:14.000000000 +0100
Tim Waugh ac3f59
+++ cups-1.4.6/cups/http-addr.c	2011-01-10 16:08:49.506358955 +0000
Tim Waugh ac3f59
@@ -253,7 +253,8 @@ httpAddrLookup(
Tim Waugh ac3f59
 
Tim Waugh ac3f59
     if (error)
Tim Waugh ac3f59
     {
Tim Waugh ac3f59
-      if (error == EAI_FAIL)
Tim Waugh ac3f59
+      if (error == EAI_FAIL || error == EAI_AGAIN || error == EAI_NODATA ||
Tim Waugh ac3f59
+          error == EAI_NONAME)
Tim Waugh ac3f59
         cg->need_res_init = 1;
Tim Waugh ac3f59
 
Tim Waugh ac3f59
       return (httpAddrString(addr, name, namelen));
Tim Waugh ac3f59
diff -up cups-1.4.6/cups/http-addrlist.c.res_init cups-1.4.6/cups/http-addrlist.c
Tim Waugh ac3f59
--- cups-1.4.6/cups/http-addrlist.c.res_init	2009-04-20 22:37:14.000000000 +0100
Tim Waugh ac3f59
+++ cups-1.4.6/cups/http-addrlist.c	2011-01-10 16:08:22.375947909 +0000
Tim Waugh ac3f59
@@ -373,7 +373,8 @@ httpAddrGetList(const char *hostname,	/*
Tim Waugh eaed78
 
Tim Waugh eaed78
       freeaddrinfo(results);
Tim Waugh eaed78
     }
Tim Waugh eaed78
-    else if (error == EAI_FAIL)
Tim Waugh ac3f59
+    else if (error == EAI_FAIL || error == EAI_AGAIN || error == EAI_NODATA ||
Tim Waugh ac3f59
+             error == EAI_NONAME)
Tim Waugh eaed78
       cg->need_res_init = 1;
Tim Waugh eaed78
 
Tim Waugh eaed78
 #else