From: Dominik Kaiser Date: Fri, 2 Aug 2024 11:24:48 +0000 (+0200) Subject: Fix some issues in parse_cmd.c X-Git-Url: https://git.dkaiser.de/?a=commitdiff_plain;h=d59a405311553dbe568ed79a5449f3222f8495ad;p=42%2Fminishell.git Fix some issues in parse_cmd.c --- 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