Revert "Fix a memory leak in ExpressionParser.cpp"
This reverts commit cce809ac90
.
The code was actually correct: "expr" is never allocated when an error is
returned. This means when the expression parser fails, deleting "expr" means
deleting an uninitialized pointer.
This commit is contained in:
parent
90d454d22f
commit
0aa9308006
|
@ -549,10 +549,7 @@ ExpressionParseStatus ParseExpressionInner(std::string str, ControlFinder &finde
|
|||
Parser p(tokens, finder);
|
||||
status = p.Parse(&expr);
|
||||
if (status != EXPRESSION_PARSE_SUCCESS)
|
||||
{
|
||||
delete expr;
|
||||
return status;
|
||||
}
|
||||
|
||||
*expr_out = expr;
|
||||
return EXPRESSION_PARSE_SUCCESS;
|
||||
|
|
Loading…
Reference in New Issue