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