diff options
author | JozanLeClerc <bousset.rudy@gmail.com> | 2020-09-28 17:14:39 +0200 |
---|---|---|
committer | JozanLeClerc <bousset.rudy@gmail.com> | 2020-09-28 17:14:39 +0200 |
commit | 60865a986bfbee6923c8b85351d1ec6f5062bc08 (patch) | |
tree | f6bbfd6bcde2826b30f09a101fb98d59e5d09708 /src/p_redirs_heredoc.c | |
parent | later (diff) | |
download | 42-minishell-60865a986bfbee6923c8b85351d1ec6f5062bc08.tar.gz 42-minishell-60865a986bfbee6923c8b85351d1ec6f5062bc08.tar.bz2 42-minishell-60865a986bfbee6923c8b85351d1ec6f5062bc08.tar.xz 42-minishell-60865a986bfbee6923c8b85351d1ec6f5062bc08.tar.zst 42-minishell-60865a986bfbee6923c8b85351d1ec6f5062bc08.zip |
In progress
Diffstat (limited to '')
-rw-r--r-- | src/p_redirs_heredoc.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/p_redirs_heredoc.c b/src/p_redirs_heredoc.c index fd5b399..6b939fe 100644 --- a/src/p_redirs_heredoc.c +++ b/src/p_redirs_heredoc.c @@ -11,14 +11,14 @@ /* ************************************************************************** */ #include <libft.h> +#include <stdint.h> #include <unistd.h> #include "d_define.h" #include "m_prompt.h" #include "s_struct.h" -char - *p_get_heredoc(const char path[], t_msh *msh) +char *p_get_heredoc(const char path[], t_msh *msh) { char *heredoc; char *line; @@ -34,9 +34,9 @@ char if (msh->fd == STDIN_FILENO) m_prompt_psx(2, msh); gnl = get_next_line(msh->fd, &line); - if (ft_strncmp(path, line, ft_strlen(path) + 1) != 0) + if (ft_strncmp(path, line, ft_strlen(path) + 1) == 0) break ; - if ((heredoc = ft_nrealloc(heredoc, ft_strlen(heredoc), + if ((heredoc = ft_nrealloc(heredoc, ft_strlen(heredoc) + 1, ft_strlen(heredoc) + ft_strlen(line) + 2)) == NULL) break ; ft_strlcpy(heredoc + ft_strlen(heredoc), line, ft_strlen(line) + 1); @@ -45,6 +45,7 @@ char ft_memdel((void*)&line); } - ft_memdel((void*)&line); + if (gnl > 0) + ft_memdel((void*)&line); return (heredoc); } |