aboutsummaryrefslogtreecommitdiff
path: root/src/eval
diff options
context:
space:
mode:
authorCharles Cabergs <me@cacharle.xyz>2020-10-07 18:58:40 +0200
committerCharles Cabergs <me@cacharle.xyz>2020-10-07 18:58:40 +0200
commit80b74c925e5bf0aaed7329d87a5ed9b6a7d57fdb (patch)
treede42b5244dafd7aba7590d81b0e87291d2474987 /src/eval
parent0b031c050e049d7bdab459b48f574e8b0048926d (diff)
downloadminishell-80b74c925e5bf0aaed7329d87a5ed9b6a7d57fdb.tar.gz
minishell-80b74c925e5bf0aaed7329d87a5ed9b6a7d57fdb.tar.bz2
minishell-80b74c925e5bf0aaed7329d87a5ed9b6a7d57fdb.zip
Fixing happy path memory leaks
Diffstat (limited to 'src/eval')
-rw-r--r--src/eval/cmd.c9
-rw-r--r--src/eval/parenthesis.c3
2 files changed, 8 insertions, 4 deletions
diff --git a/src/eval/cmd.c b/src/eval/cmd.c
index 8c08b78..242c7a5 100644
--- a/src/eval/cmd.c
+++ b/src/eval/cmd.c
@@ -6,7 +6,7 @@
/* By: charles <charles@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/06/14 10:41:31 by charles #+# #+# */
-/* Updated: 2020/10/06 17:18:20 by cacharle ### ########.fr */
+/* Updated: 2020/10/07 18:12:00 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -40,12 +40,17 @@ int eval_cmd(int fds[2], t_env env, t_ast *ast)
return (status);
if ((argv = preprocess(&ast->cmd_argv, env)) == NULL)
return (EVAL_FATAL);
+ /* printf("%p\n", ast->cmd_argv); */
/* ast->cmd_argv = NULL; */
if (argv[0] == NULL)
return (0);
param.builtin = builtin_search_func(argv[0]);
if (param.builtin != NULL && !param.builtin->forked)
- return (param.builtin->func(argv, env));
+ {
+ status = param.builtin->func(argv, env);
+ ft_split_destroy(argv);
+ return (status);
+ }
if (param.builtin == NULL
&& (status = path_search(env, argv[0], param.exec_path, true)) != 0)
diff --git a/src/eval/parenthesis.c b/src/eval/parenthesis.c
index 5a1fafa..6f4f9e0 100644
--- a/src/eval/parenthesis.c
+++ b/src/eval/parenthesis.c
@@ -6,7 +6,7 @@
/* By: charles <me@cacharle.xyz> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/09/13 20:38:29 by charles #+# #+# */
-/* Updated: 2020/10/06 17:22:29 by cacharle ### ########.fr */
+/* Updated: 2020/10/07 15:56:09 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -24,7 +24,6 @@ int eval_parenthesis(int fds[2], t_env env, t_ast *ast)
if ((status = redir_extract(&ast->redirs, env, fds)) != 0)
return (status);
- ast->tag ^= AST_PARENT;
param.fds[0] = fds[0];
param.fds[1] = fds[1];
param.env = env;