summaryrefslogtreecommitdiff
path: root/src/runner
diff options
context:
space:
mode:
authorA404M <ahmadmahmoudiprogrammer@gmail.com>2025-02-12 17:19:20 +0330
committerA404M <ahmadmahmoudiprogrammer@gmail.com>2025-02-12 17:19:20 +0330
commit142d889fc769532cae922c7ac4b0e80423d671d1 (patch)
tree5af0fc81648a9adea13ab68293cfb22fd964b726 /src/runner
parent188fc08d3b3095a843c24207fe3a73999b2894fb (diff)
fix some leaks
Diffstat (limited to 'src/runner')
-rw-r--r--src/runner/runner.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/runner/runner.c b/src/runner/runner.c
index 431305c..0c6e9a4 100644
--- a/src/runner/runner.c
+++ b/src/runner/runner.c
@@ -218,12 +218,14 @@ AstTree *runExpression(AstTree *expr, RunnerVariablePages *pages) {
case AST_TREE_TOKEN_KEYWORD_IF: {
AstTreeIf *metadata = expr->metadata;
AstTree *tree = calcAstTreeValue(metadata->condition, pages);
+ AstTree *ret;
if ((AstTreeBool)tree->metadata) {
- return runExpression(metadata->ifBody, pages);
+ ret = runExpression(metadata->ifBody, pages);
} else {
- return runExpression(metadata->elseBody, pages);
+ ret = runExpression(metadata->elseBody, pages);
}
astTreeDelete(tree);
+ return ret;
}
return NULL;
case AST_TREE_TOKEN_SCOPE: {