diff --git a/main/ast_expr2.c b/main/ast_expr2.c index 037d19a6fe..b7b533e7a3 100644 --- a/main/ast_expr2.c +++ b/main/ast_expr2.c @@ -2397,7 +2397,6 @@ static void free_value (struct val *vp) { if (vp==NULL) { - free(vp); return; } if (vp->type == AST_EXPR_string || vp->type == AST_EXPR_numeric_string) diff --git a/main/ast_expr2.fl b/main/ast_expr2.fl index bcaf768d2c..92345e9750 100644 --- a/main/ast_expr2.fl +++ b/main/ast_expr2.fl @@ -242,10 +242,10 @@ int ast_yyerror(const char *, YYLTYPE *, struct parse_io *); /* likewise */ void ast_yyfree(void *ptr, yyscan_t yyscanner) { - if (ptr) /* the normal generated yyfree func just frees its first arg; - this get complaints on some systems, as sometimes this - arg is a nil ptr! It's usually not fatal, but is irritating! */ - free( (char *) ptr ); + /* the normal generated yyfree func just frees its first arg; + this get complaints on some systems, as sometimes this + arg is a nil ptr! It's usually not fatal, but is irritating! */ + free( (char *) ptr ); } int ast_expr(char *expr, char *buf, int length, struct ast_channel *chan) @@ -286,8 +286,7 @@ int ast_expr(char *expr, char *buf, int length, struct ast_channel *chan) else buf[0] = 0; return_value = strlen(buf); - if (io.val->u.s) - free(io.val->u.s); + free(io.val->u.s); } free(io.val); }