curl: don't pass semicolons when parsing Content-Disposition

Test 1422 updated to verify.

Closes #1964
This commit is contained in:
Kristiyan Tsaklev 2017-10-07 17:47:11 +03:00 committed by Daniel Stenberg
parent 06cb8adde2
commit c95c92da75
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
2 changed files with 7 additions and 10 deletions

View file

@ -161,8 +161,13 @@ static char *parse_filename(const char *ptr, size_t len)
else
stop = ';';
/* scan for the end letter and stop there */
q = strchr(p, stop);
if(q)
*q = '\0';
/* if the filename contains a path, only use filename portion */
q = strrchr(copy, '/');
q = strrchr(p, '/');
if(q) {
p = q + 1;
if(!*p) {
@ -183,14 +188,6 @@ static char *parse_filename(const char *ptr, size_t len)
}
}
/* scan for the end letter and stop there */
for(q = p; *q; ++q) {
if(*q == stop) {
*q = '\0';
break;
}
}
/* make sure the file name doesn't end in \r or \n */
q = strchr(p, '\r');
if(q)