diff --git a/builtins/pwd.c b/builtins/pwd.c index 65d3f00..aa7f39c 100644 --- a/builtins/pwd.c +++ b/builtins/pwd.c @@ -6,7 +6,7 @@ /* By: erey-bet +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/02/17 16:09:11 by erey-bet #+# #+# */ -/* Updated: 2023/02/21 14:34:50 by erey-bet ### ########.fr */ +/* Updated: 2023/02/21 15:11:38 by cchauvet ### ########.fr */ /* */ /* ************************************************************************** */ @@ -17,10 +17,10 @@ int pwd(int fd) char path[PATH_MAX]; if (getcwd(path, sizeof(path)) != NULL) - ft_putstr_fd(path, fd); + ft_putendl_fd(path, fd); else { - ft_putstr_fd("Error getcwd", fd); + ft_putendl_fd("Error getcwd", fd); return (1); } return (0); @@ -35,7 +35,7 @@ char *get_pwd(int fd) return (str); else { - ft_putstr_fd("Error getcwd", fd); + ft_putendl_fd("Error getcwd", fd); return (NULL); } } diff --git a/execution.c b/execution.c index fa73ae0..53eb881 100644 --- a/execution.c +++ b/execution.c @@ -6,7 +6,7 @@ /* By: cchauvet executable, "pwd") == 0) */ - /* return (pwd(env, cmd->fd_out)); */ - if (ft_strcmp(cmd->executable, "env") == 0) - return (print_env(env, cmd->fd_out)); - if (ft_strcmp(cmd->executable, "export") == 0) - return (print_export(env, cmd->fd_out)); - /* if (ft_strcmp(cmd->executable, "cd") == 0) */ - /* return (move_folder(cmd->args[0], cmd->fd_out)); */ + int return_code; + + return_code = -1; + if (ft_strcmp(cmd->executable, "pwd") == 0) + return_code = pwd(cmd->fd_out); + else if (ft_strcmp(cmd->executable, "env") == 0) + return_code = print_env(env, cmd->fd_out); + else if (ft_strcmp(cmd->executable, "export") == 0) + return_code = (print_export(env, cmd->fd_out)); + else if (ft_strcmp(cmd->executable, "cd") == 0) + return_code = (move_folder(cmd->args[0], cmd->fd_out)); /* if (ft_strcmp(cmd->executable, "unset") == 0) */ - /* return (unset(env, cmd->args, cmd->fd_out)); */ - /* if (ft_strcmp(cmd->executable, "echo") == 0) */ - /* return (echo(cmd->fd_out, cmd->args[0])); */ - if (ft_strcmp(cmd->executable, "exit") == 0) - return (-2); - return (-1); + /* return_code = (unset(env, cmd->args, cmd->fd_out)); */ + /* else if (ft_strcmp(cmd->executable, "echo") == 0) */ + /* return_code = (echo(cmd->fd_out, cmd->args + 1)); */ + else if (ft_strcmp(cmd->executable, "exit") == 0) + return_code = -2; + if (return_code != -1) + cmd->executable = NULL; + return (return_code); } int ft_cmds_executor(t_list **cmds, t_list **env) diff --git a/main.c b/main.c index b67da56..41e02c6 100644 --- a/main.c +++ b/main.c @@ -6,7 +6,7 @@ /* By: cchauvet