parse_zero does not need allocated memory, remove it and let the caller free it.
Signed-off-by: Peter Wu <[email protected]> --- read_config_file.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/read_config_file.c b/read_config_file.c index 55124f6..6e3add4 100644 --- a/read_config_file.c +++ b/read_config_file.c @@ -256,7 +256,7 @@ static struct expr_node *parse_argnum(struct locus *loc, char **str, int *ownp, int zero); static struct expr_node * -parse_zero(struct locus *loc, char **str, struct expr_node *ret, int *ownp) +parse_zero(struct locus *loc, char **str, int *ownp) { eat_spaces(str); if (**str == '(') { @@ -279,7 +279,6 @@ parse_zero(struct locus *loc, char **str, struct expr_node *ret, int *ownp) return ret; } else { - free(ret); *ownp = 0; return expr_node_zero(); } @@ -366,9 +365,10 @@ parse_argnum(struct locus *loc, char **str, int *ownp, int zero) } else if (strcmp(name, "zero") == 0) { struct expr_node *ret - = parse_zero(loc, str, expr, ownp); + = parse_zero(loc, str, ownp); if (ret == NULL) goto fail_ident; + free(expr); free(name); return ret; -- 1.8.4 _______________________________________________ Ltrace-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/ltrace-devel
