summaryrefslogtreecommitdiff
path: root/content/fetchers/curl.c
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@netsurf-browser.org>2011-03-12 23:59:37 +0000
committerDaniel Silverstone <dsilvers@netsurf-browser.org>2011-03-12 23:59:37 +0000
commit314124d3ef41298eeb3004752f4021a9b1c08f74 (patch)
treee4fdd7b1d8d0efcb230f4635c6fa81a40fe391f5 /content/fetchers/curl.c
parent7d8e3cac494a34a00d55a8d224aca3dd3d6f73f6 (diff)
downloadnetsurf-314124d3ef41298eeb3004752f4021a9b1c08f74.tar.gz
netsurf-314124d3ef41298eeb3004752f4021a9b1c08f74.tar.bz2
Instead of deleting the early scheduled poll, simply always add another poll if cURL thinks there might be work to do later
svn path=/trunk/netsurf/; revision=12003
Diffstat (limited to 'content/fetchers/curl.c')
-rw-r--r--content/fetchers/curl.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/content/fetchers/curl.c b/content/fetchers/curl.c
index 56119bef1..895dc4256 100644
--- a/content/fetchers/curl.c
+++ b/content/fetchers/curl.c
@@ -711,8 +711,6 @@ void fetch_curl_poll(const char *scheme_ignored)
CURLMcode codem;
CURLMsg *curl_msg;
- schedule_remove((schedule_callback_fn)fetch_curl_poll, NULL);
-
/* do any possible work on the current fetches */
do {
codem = curl_multi_perform(fetch_curl_multi, &running);
@@ -737,6 +735,10 @@ void fetch_curl_poll(const char *scheme_ignored)
}
curl_msg = curl_multi_info_read(fetch_curl_multi, &queue);
}
+
+ if (running != 0) {
+ schedule(10, (schedule_callback_fn)fetch_curl_poll, fetch_curl_poll);
+ }
}