mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
better cleanup when existing due to bad usage
This commit is contained in:
parent
39e939a507
commit
2cac4a9c72
20
src/main.c
20
src/main.c
@ -443,6 +443,23 @@ static char *file2memory(FILE *file, long *size)
|
||||
return NULL; /* no string */
|
||||
}
|
||||
|
||||
void clean_getout(struct Configurable *config)
|
||||
{
|
||||
struct getout *node=config->url_list;
|
||||
struct getout *next;
|
||||
|
||||
while(node) {
|
||||
next = node->next;
|
||||
if(node->url)
|
||||
free(node->url);
|
||||
if(node->outfile)
|
||||
free(node->outfile);
|
||||
free(node);
|
||||
|
||||
node = next; /* GOTO next */
|
||||
}
|
||||
}
|
||||
|
||||
struct getout *new_getout(struct Configurable *config)
|
||||
{
|
||||
struct getout *node =malloc(sizeof(struct getout));
|
||||
@ -1480,6 +1497,7 @@ operate(struct Configurable *config, int argc, char *argv[])
|
||||
/* no text */
|
||||
break;
|
||||
}
|
||||
clean_getout(config);
|
||||
return CURLE_FAILED_INIT;
|
||||
}
|
||||
|
||||
@ -1530,7 +1548,7 @@ operate(struct Configurable *config, int argc, char *argv[])
|
||||
/* save outfile pattern before expansion */
|
||||
outfiles = urlnode->outfile?strdup(urlnode->outfile):NULL;
|
||||
|
||||
if (!outfiles || strequal(outfiles, "-") && urlnum > 1) {
|
||||
if ((!outfiles || strequal(outfiles, "-")) && urlnum > 1) {
|
||||
/* multiple files extracted to stdout, insert separators! */
|
||||
separator = 1;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user