fix: exit code works
This commit is contained in:
@ -45,10 +45,14 @@ static int ft_executable_parse(t_data *data, t_cmd *cmd)
|
||||
else if (ft_strcmp(cmd->args[0], "cd") == 0)
|
||||
own = 1;
|
||||
else
|
||||
path = ft_get_executable(data->env, cmd->args[0]);
|
||||
{
|
||||
path = ft_get_executable(data, cmd->args[0]);
|
||||
if (path == NULL)
|
||||
return (1);
|
||||
}
|
||||
cmd->own_cmd = own;
|
||||
cmd->executable = path;
|
||||
return (own);
|
||||
return (0);
|
||||
}
|
||||
|
||||
int ft_cmd_parser(t_data *data, char *cmd_str)
|
||||
@ -65,14 +69,18 @@ int ft_cmd_parser(t_data *data, char *cmd_str)
|
||||
if (ft_redirection(data, cmd, cmd_str))
|
||||
{
|
||||
ft_cmddel(cmd);
|
||||
return (1);
|
||||
return (0);
|
||||
}
|
||||
if (ft_args_parse(cmd_str, cmd))
|
||||
{
|
||||
ft_cmddel(cmd);
|
||||
return (1);
|
||||
}
|
||||
ft_executable_parse(data, cmd);
|
||||
if (ft_executable_parse(data, cmd))
|
||||
{
|
||||
ft_cmddel(cmd);
|
||||
return (1);
|
||||
}
|
||||
element = ft_lstnew(cmd);
|
||||
if (element == NULL)
|
||||
{
|
||||
@ -98,7 +106,11 @@ int ft_cmds_parser(t_data *data, const char *line)
|
||||
i = 0;
|
||||
while (tab[i] != NULL)
|
||||
{
|
||||
ft_cmd_parser(data, tab[i]);
|
||||
if (ft_cmd_parser(data, tab[i]))
|
||||
{
|
||||
ft_freer_tab_ultimate(1, tab);
|
||||
return (1);
|
||||
}
|
||||
i++;
|
||||
}
|
||||
if (*data->cmds != NULL)
|
||||
|
Reference in New Issue
Block a user