aboutsummaryrefslogtreecommitdiff
path: root/lib/transfer.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2010-08-29 00:16:34 +0200
committerDaniel Stenberg <daniel@haxx.se>2010-08-29 00:16:34 +0200
commit3af696f7c444a32cdd9e183a4ed0b543f09fef86 (patch)
tree89a06db82c56e0c68e418f15274605e1859441ec /lib/transfer.c
parent09cee1633b0dd6e079f53047f7a6fc97bb1b1ef8 (diff)
multi: set timeouts when transfer begins
When a new transfer is about to start we now set the proper timeouts to expire for the multi interface if they are set for the handle. This is a follow-up bugfix to make sure that easy handles timeout properly when the times expire and the multi interface is used. This also improves curl_multi_timeout().
Diffstat (limited to 'lib/transfer.c')
-rw-r--r--lib/transfer.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/transfer.c b/lib/transfer.c
index 99a62610b..71fb3961e 100644
--- a/lib/transfer.c
+++ b/lib/transfer.c
@@ -1433,6 +1433,12 @@ CURLcode Curl_pretransfer(struct SessionHandle *data)
Curl_initinfo(data); /* reset session-specific information "variables" */
Curl_pgrsStartNow(data);
+ if(data->set.timeout)
+ Curl_expire(data, data->set.timeout);
+
+ if(data->set.connecttimeout)
+ Curl_expire(data, data->set.connecttimeout);
+
return CURLE_OK;
}