diff --git a/lib/hostip.c b/lib/hostip.c index ab372c40a3165f2443be32b0f417d711a45612b0..8e02e470108f4fce8fe41fe720bb9b0bd12bc7c3 100644 --- a/lib/hostip.c +++ b/lib/hostip.c @@ -587,8 +587,9 @@ CURLcode Curl_is_resolved(struct connectdata *conn, count = select(nfds, &read_fds, &write_fds, NULL, (struct timeval *)&tv); - if(count) - ares_process(data->state.areschannel, &read_fds, &write_fds); + /* Call ares_process() unconditonally here, even if we simply timed out + above, as otherwise the ares name resolve won't timeout! */ + ares_process(data->state.areschannel, &read_fds, &write_fds); *dns = NULL;