aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Kaiser2025-01-25 14:42:46 +0100
committerDominik Kaiser2025-01-25 14:42:46 +0100
commitb427100b6c0c655f74dc689533a3f36edfeebffc (patch)
treef2cca636434cda8e0f9acaa526c4a71e6444b2bc
parent87b90103930d83d74baa998866b0995cb8887d51 (diff)
downloadminishell-b427100b6c0c655f74dc689533a3f36edfeebffc.tar.gz
minishell-b427100b6c0c655f74dc689533a3f36edfeebffc.zip
Fix last leak
-rw-r--r--src/collect_redirs.c5
-rw-r--r--src/execute_cmd.c4
2 files changed, 6 insertions, 3 deletions
diff --git a/src/collect_redirs.c b/src/collect_redirs.c
index 860d9bc..c1b7047 100644
--- a/src/collect_redirs.c
+++ b/src/collect_redirs.c
@@ -6,7 +6,7 @@
/* By: chuhlig <chuhlig@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/08/02 13:49:31 by dkaiser #+# #+# */
-/* Updated: 2025/01/25 11:40:52 by chuhlig ### ########.fr */
+/* Updated: 2025/01/25 14:37:06 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
@@ -53,7 +53,7 @@ static void collect_and_check_redir(t_redirection *result, t_token **cur,
char *str;
if ((*cur)->content.redir_type != INPUT_LIMITER)
- str = ft_strdup((*cur)->next->content.string);
+ str = (*cur)->next->content.string;
if ((*cur)->content.redir_type == INPUT_LIMITER)
{
if (!set_heredoc_data(*cur, result, data->env))
@@ -69,6 +69,7 @@ static void collect_and_check_redir(t_redirection *result, t_token **cur,
q4fc(data->create_files, set_redir(&result[1], OUTPUT_APPEND,
format_string(str, data->env, 0), data->env));
i_love_the_norme(cur, tokens);
+ free(str);
}
static t_redirection *set_redir(t_redirection *redir, int type, char *spec,
diff --git a/src/execute_cmd.c b/src/execute_cmd.c
index 9f00522..adfcb37 100644
--- a/src/execute_cmd.c
+++ b/src/execute_cmd.c
@@ -6,7 +6,7 @@
/* By: chuhlig <chuhlig@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/12/17 19:21:35 by chuhlig #+# #+# */
-/* Updated: 2025/01/25 11:41:42 by chuhlig ### ########.fr */
+/* Updated: 2025/01/25 14:42:39 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
@@ -49,6 +49,8 @@ int execute_cmd(t_cmd *cmd, t_env **env)
int original_std[2];
int result;
+ if (cmd->args == NULL || cmd->args[0] == NULL)
+ return (EXIT_FAILURE);
original_std[1] = dup(STDOUT_FILENO);
original_std[0] = dup(STDIN_FILENO);
create_files(cmd->create_files);