diff options
Diffstat (limited to '')
-rw-r--r-- | src/b_cd.c | 34 | ||||
-rw-r--r-- | src/b_cd.h | 10 | ||||
-rw-r--r-- | src/b_echo.h | 10 |
3 files changed, 23 insertions, 31 deletions
@@ -24,8 +24,7 @@ #include "u_vars.h" #include "u_vars_next.h" -static void - b_set_oldpwd(t_msh *msh) +static void b_set_oldpwd(t_msh *msh) { char pwd[PATH_MAX]; char tmp[PATH_MAX]; @@ -47,39 +46,36 @@ static void } } -static void - b_fill_repath(char repath[], - char *splited[]) +static void b_fill_repath(char rpath[], char *splited[]) { size_t i; size_t j; i = 0; - repath[0] = (splited[0] == NULL) ? '/' : repath[0]; + rpath[0] = (splited[0] == NULL) ? '/' : rpath[0]; while (splited[i] != NULL) { if (ft_strncmp(splited[i], "..", 3) == 0) { - j = (repath[0] == '\0') ? (0) : (ft_strlen(repath)); - while (repath[j] != '/' && j > 0) + j = (rpath[0] == '\0') ? (0) : (ft_strlen(rpath)); + while (rpath[j] != '/' && j > 0) j--; - repath[j] = '\0'; + rpath[j] = '\0'; } else if (ft_strncmp(splited[i], ".", 2) == 0) { } else { - j = (ft_strncmp(repath, "/", 2) == 0) ? (1) : (ft_strlen(repath) + 1); - repath[j - 1] = '/'; - ft_strlcpy(repath + j, splited[i], ft_strlen(splited[i]) + 1); + j = (ft_strncmp(rpath, "/", 2) == 0) ? (1) : (ft_strlen(rpath) + 1); + rpath[j - 1] = '/'; + ft_strlcpy(rpath + j, splited[i], ft_strlen(splited[i]) + 1); } i++; } } -static void - b_upgrade_pwd(const char path[], t_msh *msh) +static void b_upgrade_pwd(const char path[], t_msh *msh) { char **splited; char repath[262144]; @@ -107,22 +103,18 @@ static void f_alloc_and_destroy_msh(msh); } -uint8_t - b_cd(char *args[], - t_msh *msh) +uint8_t b_cd(char *args[], t_msh *msh) { const uint64_t argc = u_builtins_get_argc((const char**)args); char path[PATH_MAX]; if (argc >= 2) - { f_fail_too_many_args("cd", msh); + if (argc >= 2) return (1); - } else if (argc == 0) { - u_get_var_value(path, "$HOME", PATH_MAX, msh); - if (path[0] == C_NUL) + if (u_get_var_value(path, "$HOME", PATH_MAX, msh) == 1) { ft_dprintf(STDERR_FILENO, "minishell: cd: %s\n", FT_FAIL_HOME_NOT_SET); @@ -10,13 +10,13 @@ /* */ /* ************************************************************************** */ -#ifndef B_CD_H -#define B_CD_H +#ifndef FT_B_CD_H +# define FT_B_CD_H -#include <stdint.h> +# include <stdint.h> -#include "s_struct.h" +# include "s_struct.h" -uint8_t b_cd(char *args[], t_msh *msh); +uint8_t b_cd(char *args[], t_msh *msh); #endif diff --git a/src/b_echo.h b/src/b_echo.h index ba4698e..391252f 100644 --- a/src/b_echo.h +++ b/src/b_echo.h @@ -10,13 +10,13 @@ /* */ /* ************************************************************************** */ -#ifndef B_ECHO_H -#define B_ECHO_H +#ifndef FT_B_ECHO_H +# define FT_B_ECHO_H -#include <stdint.h> +# include <stdint.h> -#include "s_struct.h" +# include "s_struct.h" -uint8_t b_echo(char *args[], t_msh *msh); +uint8_t b_echo(char *args[], t_msh *msh); #endif |