fixed signal exit in shell_script()

This commit is contained in:
LuckyLaszlo
2021-12-18 08:55:54 +01:00
parent afbb1cd2e0
commit fa474c86ab

View File

@@ -6,13 +6,14 @@
/* By: lperrey <lperrey@student.42.fr> +#+ +:+ +#+ */ /* By: lperrey <lperrey@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2021/10/26 23:47:44 by lperrey #+# #+# */ /* Created: 2021/10/26 23:47:44 by lperrey #+# #+# */
/* Updated: 2021/12/18 05:29:27 by lperrey ### ########.fr */ /* Updated: 2021/12/18 08:51:46 by lperrey ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
#include "minishell.h" #include "minishell.h"
static char *read_input_script(t_all *c); static char *read_input_script(t_all *c);
static void exit_signal(t_all *c);
void shell_script(t_all *c) void shell_script(t_all *c)
{ {
@@ -34,6 +35,8 @@ void shell_script(t_all *c)
if (!c->pipeline) if (!c->pipeline)
break ; break ;
exec_cmd_line(c); exec_cmd_line(c);
if (get_last_exit_status() > EXIT_SIGNAL)
exit_signal(c);
} }
} }
free(line_input); free(line_input);
@@ -56,3 +59,9 @@ static char *read_input_script(t_all *c)
exit_free(c, get_last_exit_status()); exit_free(c, get_last_exit_status());
return (line_input); return (line_input);
} }
static void exit_signal(t_all *c)
{
write(STDOUT_FILENO, "\n", 1);
exit_free(c, get_last_exit_status());
}