diff options
author | Constantine Sapuntzakis <csapuntz@gmail.com> | 2010-07-14 00:32:53 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2010-07-14 00:32:53 +0200 |
commit | bc0699f226ec55fde58a823fb818d8f8106c8fbd (patch) | |
tree | 844efe753cd308473c8eca25b6d0bfce23925cf3 /docs/examples/fopen.c | |
parent | 157e6d4e7e4f3d5eff4fea7ba7fe840da5fcfd63 (diff) | |
download | curl-bc0699f226ec55fde58a823fb818d8f8106c8fbd.tar.gz |
examples: add curl_multi_timeout
Make the multi-interface using examples use curl_multi_timeout to
properly educate users how to do things.
Diffstat (limited to 'docs/examples/fopen.c')
-rw-r--r-- | docs/examples/fopen.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/docs/examples/fopen.c b/docs/examples/fopen.c index 35e24b11f..f21526b29 100644 --- a/docs/examples/fopen.c +++ b/docs/examples/fopen.c @@ -144,6 +144,8 @@ fill_buffer(URL_FILE *file,int want,int waittime) do { int maxfd = -1; + long curl_timeo = -1; + FD_ZERO(&fdread); FD_ZERO(&fdwrite); FD_ZERO(&fdexcep); @@ -152,6 +154,15 @@ fill_buffer(URL_FILE *file,int want,int waittime) timeout.tv_sec = 60; /* 1 minute */ timeout.tv_usec = 0; + curl_multi_timeout(multi_handle, &curl_timeo); + if(curl_timeo >= 0) { + timeout.tv_sec = curl_timeo / 1000; + if(timeout.tv_sec > 1) + timeout.tv_sec = 1; + else + timeout.tv_usec = (curl_timeo % 1000) * 1000; + } + /* get file descriptors from the transfers */ curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd); |