diff options
author | Daniel Stenberg <daniel@haxx.se> | 2007-06-20 21:57:28 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2007-06-20 21:57:28 +0000 |
commit | d978f85d553686714ce408e90280cbcce692f5d4 (patch) | |
tree | 22086cff193a20656faed3c1eccc73b7da91e786 /src | |
parent | 6e7f47da5b2e44f799f2c49a96f8764a715ea423 (diff) |
Adam Piggott filed bug report #1740263
(http://curl.haxx.se/bug/view.cgi?id=1740263). Adam discovered that when
getting a large amount of URLs with curl, they were fetched slower and
slower... which turned out to be because the --libcurl data collecting which
wrongly always was enabled, but no longer is...
Diffstat (limited to 'src')
-rw-r--r-- | src/main.c | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/src/main.c b/src/main.c index 9124747f2..716162126 100644 --- a/src/main.c +++ b/src/main.c @@ -3354,13 +3354,15 @@ output_expected(const char* url, const char* uploadfile) return FALSE; /* non-HTTP upload, probably no output should be expected */ } -#define my_setopt(x,y,z) _my_setopt(x, #y, y, z) +#define my_setopt(x,y,z) _my_setopt(x, config, #y, y, z) static struct curl_slist *easycode; -CURLcode _my_setopt(CURL *curl, const char *name, CURLoption tag, ...); +CURLcode _my_setopt(CURL *curl, struct Configurable *config, const char *name, + CURLoption tag, ...); -CURLcode _my_setopt(CURL *curl, const char *name, CURLoption tag, ...) +CURLcode _my_setopt(CURL *curl, struct Configurable *config, const char *name, + CURLoption tag, ...) { va_list arg; CURLcode ret; @@ -3409,14 +3411,18 @@ CURLcode _my_setopt(CURL *curl, const char *name, CURLoption tag, ...) ret = curl_easy_setopt(curl, tag, oval); } - bufp = curl_maprintf("%scurl_easy_setopt(hnd, %s, %s);%s", - remark?"/* ":"", name, value, - remark?" [REMARK] */":""); + if(config->libcurl) { + /* we only use this for real if --libcurl was used */ - if (!bufp || !curl_slist_append(easycode, bufp)) - ret = CURLE_OUT_OF_MEMORY; - if (bufp) - curl_free(bufp); + bufp = curl_maprintf("%scurl_easy_setopt(hnd, %s, %s);%s", + remark?"/* ":"", name, value, + remark?" [REMARK] */":""); + + if (!bufp || !curl_slist_append(easycode, bufp)) + ret = CURLE_OUT_OF_MEMORY; + if (bufp) + curl_free(bufp); + } va_end(arg); return ret; |