diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/multi.c | 14 | 
1 files changed, 7 insertions, 7 deletions
| diff --git a/lib/multi.c b/lib/multi.c index 066adfed3..2faeaa74f 100644 --- a/lib/multi.c +++ b/lib/multi.c @@ -1010,13 +1010,6 @@ CURLMcode curl_multi_wait(struct Curl_multi *multi,    if(multi->in_callback)      return CURLM_RECURSIVE_API_CALL; -  /* If the internally desired timeout is actually shorter than requested from -     the outside, then use the shorter time! But only if the internal timer -     is actually larger than -1! */ -  (void)multi_timeout(multi, &timeout_internal); -  if((timeout_internal >= 0) && (timeout_internal < (long)timeout_ms)) -    timeout_ms = (int)timeout_internal; -    /* Count up how many fds we have from the multi handle */    data = multi->easyp;    while(data) { @@ -1041,6 +1034,13 @@ CURLMcode curl_multi_wait(struct Curl_multi *multi,      data = data->next; /* check next handle */    } +  /* If the internally desired timeout is actually shorter than requested from +     the outside, then use the shorter time! But only if the internal timer +     is actually larger than -1! */ +  (void)multi_timeout(multi, &timeout_internal); +  if((timeout_internal >= 0) && (timeout_internal < (long)timeout_ms)) +    timeout_ms = (int)timeout_internal; +    curlfds = nfds; /* number of internal file descriptors */    nfds += extra_nfds; /* add the externally provided ones */ | 
