aboutsummaryrefslogtreecommitdiff
path: root/interpreter/syntax.c
diff options
context:
space:
mode:
authorCamil Staps2016-10-14 22:17:01 +0200
committerCamil Staps2016-10-14 22:17:01 +0200
commit6ca377762516888b0488d60c971e0660ae6035f4 (patch)
tree74c6b013aa80f61cd0bd511a097e54a686b33680 /interpreter/syntax.c
parentMake debug graphs a command line option (-g) (diff)
token_list using an array for memory efficiency
Diffstat (limited to 'interpreter/syntax.c')
-rw-r--r--interpreter/syntax.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/interpreter/syntax.c b/interpreter/syntax.c
index c79d482..015f820 100644
--- a/interpreter/syntax.c
+++ b/interpreter/syntax.c
@@ -10,10 +10,10 @@ void free_token(struct token *tk) {
}
void free_token_list(struct token_list *list) {
- free_token(&list->elem);
- if (list->rest)
- free_token_list(list->rest);
- my_free(list->rest);
+ unsigned int i;
+ for (i = 0; i < list->index; i++)
+ free_token(&list->elems[i]);
+ my_free(list);
}
bool empty_args_list(struct arg_list *list) {