summaryrefslogtreecommitdiff
path: root/src/tool_operhlp.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2011-11-20 23:33:46 +0100
committerDaniel Stenberg <daniel@haxx.se>2011-11-20 23:35:49 +0100
commitc532604b137cae2e2814280778f914e4cd0460d1 (patch)
treed3104e465a15e8e5b813906129f4010b4921d694 /src/tool_operhlp.c
parent64f328c787ab763cc994eadd6b82f32490d37ebb (diff)
downloadcurl-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.c18
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;
}