From d59a405311553dbe568ed79a5449f3222f8495ad Mon Sep 17 00:00:00 2001 From: Dominik Kaiser Date: Fri, 2 Aug 2024 13:24:48 +0200 Subject: [PATCH] Fix some issues in parse_cmd.c --- src/parse_cmd.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/parse_cmd.c b/src/parse_cmd.c index 0173caa..8ed9785 100644 --- a/src/parse_cmd.c +++ b/src/parse_cmd.c @@ -6,7 +6,7 @@ /* By: dkaiser previous); if (cur->next != NULL) { + if (cur->previous == NULL) + *tokens = cur->next; cur = cur->next; free_token_and_connect(cur->previous); } @@ -111,8 +113,15 @@ static t_assign **collect_assigns(t_token **tokens) { result[i] = to_assign(cur->content.string); i++; - cur = cur->next; - free_token(cur->previous); + if (cur->next != NULL) + { + cur = cur->next; + free_token(cur->previous); + } + else + { + free_token(cur); + } } *tokens = cur; result[i] = NULL; @@ -157,7 +166,7 @@ static char **collect_args(t_token **tokens) } cur = *tokens; i = 0; - while (cur != NULL) + while (cur != NULL && cur->type == STRING_TOKEN) { result[i] = cur->content.string; // free token -- 2.47.2