diff options
author | Daniel Stenberg <daniel@haxx.se> | 2011-11-20 23:33:46 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2011-11-20 23:35:49 +0100 |
commit | c532604b137cae2e2814280778f914e4cd0460d1 (patch) | |
tree | d3104e465a15e8e5b813906129f4010b4921d694 /src/tool_operhlp.c | |
parent | 64f328c787ab763cc994eadd6b82f32490d37ebb (diff) | |
download | curl-c532604b137cae2e2814280778f914e4cd0460d1.tar.gz |
-J -O: use -O name if no Content-Disposition header comes!
A regression between 7.22.0 and 7.23.0 -- downloading a file with the
flags -O and -J results in the content being written to stdout if and
only if there was no Content-Disposition header in the http response. If
there is a C-D header with a filename attribute, the output is correctly
written.
Reported by: Dave Reisner
Bug: http://curl.haxx.se/mail/archive-2011-11/0030.html
Diffstat (limited to 'src/tool_operhlp.c')
-rw-r--r-- | src/tool_operhlp.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/tool_operhlp.c b/src/tool_operhlp.c index 808d2d564..4c1697b20 100644 --- a/src/tool_operhlp.c +++ b/src/tool_operhlp.c @@ -178,6 +178,24 @@ CURLcode get_url_file_name(char **filename, const char *url) return CURLE_OUT_OF_MEMORY; } } + + /* in case we built debug enabled, we allow an environment variable + * named CURL_TESTDIR to prefix the given file name to put it into a + * specific directory + */ +#ifdef DEBUGBUILD + { + char *tdir = curlx_getenv("CURL_TESTDIR"); + if(tdir) { + char buffer[512]; /* suitably large */ + snprintf(buffer, sizeof(buffer), "%s/%s", tdir, *filename); + Curl_safefree(*filename); + *filename = strdup(buffer); /* clone the buffer */ + curl_free(tdir); + } + } +#endif + return CURLE_OK; } |