aboutsummaryrefslogtreecommitdiff
path: root/src/parser.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser.c')
-rw-r--r--src/parser.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/parser.c b/src/parser.c
index 1375954..e7b53c2 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -6,7 +6,7 @@
/* By: chuhlig <chuhlig@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/06/29 15:53:29 by dkaiser #+# #+# */
-/* Updated: 2025/01/11 16:06:54 by chuhlig ### ########.fr */
+/* Updated: 2025/01/21 21:27:15 by chuhlig ### ########.fr */
/* */
/* ************************************************************************** */
@@ -19,7 +19,7 @@ static t_token *find_token_by_type(t_token *tokens, int type);
t_token *split_at_first(t_token **tokens, int type);
static t_node *parse_statement(t_token *tokens, t_env **env);
-t_list *parse(t_token *tokens, t_env **env)
+t_node *parse(t_token *tokens, t_env **env)
{
t_node *result;
@@ -29,7 +29,7 @@ t_list *parse(t_token *tokens, t_env **env)
result = parse_statement(tokens, env);
if (result == NULL)
printf("Parsing error.\n");
- return (ft_lstnew(result));
+ return (result);
}
static t_node *parse_statement(t_token *tokens, t_env **env)
@@ -40,6 +40,7 @@ static t_node *parse_statement(t_token *tokens, t_env **env)
if (left_side_tokens == NULL)
{
free_tokens(tokens);
+ tokens = NULL;
return (NULL);
}
else if (tokens != NULL)
@@ -70,6 +71,7 @@ t_token *split_at_first(t_token **tokens, int type)
if (result == split)
result = NULL;
free_token(split);
+ split = NULL;
return (result);
}