fix memleak on background cmd error

- src must be free after join_args()
- wordfree must bee used after wordexp
master
ael-code 7 years ago
parent af0f0375ef
commit 4550cb2b3e
No known key found for this signature in database
GPG Key ID: 3390538CF7E96023

@ -62,8 +62,11 @@ struct cmd_results *output_cmd_background(int argc, char **argv) {
wordexp_t p; wordexp_t p;
char *src = join_args(argv, j); char *src = join_args(argv, j);
if (wordexp(src, &p, 0) != 0 || p.we_wordv[0] == NULL) { if (wordexp(src, &p, 0) != 0 || p.we_wordv[0] == NULL) {
return cmd_results_new(CMD_INVALID, "output", struct cmd_results *cmd_res = cmd_results_new(CMD_INVALID, "output",
"Invalid syntax (%s).", src); "Invalid syntax (%s)", src);
free(src);
wordfree(&p);
return cmd_res;
} }
free(src); free(src);
src = p.we_wordv[0]; src = p.we_wordv[0];

Loading…
Cancel
Save