aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/main.c b/src/main.c
index 608b86afe..26b95a656 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1749,8 +1749,15 @@ static ParameterError getparameter(char *flag, /* f or -long-flag */
postdata = file2memory(file, &config->postfieldsize);
else
postdata = file2string(file);
+
if(file && (file != stdin))
fclose(file);
+
+ if(!postdata) {
+ /* no data from the file, point to a zero byte string to make this
+ get sent as a POST anyway */
+ postdata=strdup("");
+ }
}
else {
GetStr(&postdata, nextarg);
@@ -2205,10 +2212,11 @@ static ParameterError getparameter(char *flag, /* f or -long-flag */
if(-1 == stat(nextarg, &statbuf)) {
/* failed, remove time condition */
config->timecond = CURL_TIMECOND_NONE;
- fprintf(stderr,
- "Warning: Illegal date format for -z/--timecond and not "
- "a file name.\n"
- " See curl_getdate(3) for valid date syntax.\n");
+ if(!(config->conf & CONF_MUTE))
+ fprintf(stderr,
+ "Warning: Illegal date format for -z/--timecond and not "
+ "a file name.\n"
+ " See curl_getdate(3) for valid date syntax.\n");
}
else {
/* pull the time out from the file */