Normed out funtions
sorting out needed
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
/* By: tmaze <tmaze@student.42.fr> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2019/01/07 16:44:40 by tmaze #+# #+# */
|
||||
/* Updated: 2020/01/25 14:28:22 by tmaze ### ########.fr */
|
||||
/* Updated: 2020/01/25 17:00:23 by tmaze ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
@@ -42,8 +42,9 @@ char *check_path_slash_cd(char *exec)
|
||||
return (put_error_cd(exec, "no such file or directory"));
|
||||
if ((i = lstat(exec, &info)) != 0)
|
||||
return (put_error_cd(exec, "can't determine info"));
|
||||
if (!S_ISDIR(info.st_mode) || (S_ISLNK(info.st_mode)
|
||||
&& ((i = stat(exec, &info2)) != 0 || !S_ISDIR(info2.st_mode))))
|
||||
if ((S_ISLNK(info.st_mode)
|
||||
&& ((i = stat(exec, &info2)) != 0 || !S_ISDIR(info2.st_mode)))
|
||||
&& !S_ISDIR(info.st_mode))
|
||||
return (put_error_cd(exec, "not a directory"));
|
||||
if ((i = access(exec, X_OK)) != 0)
|
||||
return (put_error_cd(exec, "permission denied"));
|
||||
@@ -117,7 +118,7 @@ char cd_getparams(char **argv, size_t *i)
|
||||
return (ret[0]);
|
||||
}
|
||||
|
||||
int cmd_cd_switchboard(char **av, t_env **env, char opt)
|
||||
int cmd_cd_switchboard(char **av, t_env **env, char opt, int i)
|
||||
{
|
||||
t_env *e;
|
||||
char *p;
|
||||
@@ -148,14 +149,11 @@ int cmd_cd_switchboard(char **av, t_env **env, char opt)
|
||||
|
||||
int cmd_cd(char **argv, t_env **env)
|
||||
{
|
||||
t_env *elem;
|
||||
size_t i;
|
||||
char *path;
|
||||
char opt;
|
||||
int ret;
|
||||
|
||||
i = 0;
|
||||
if ((opt = cd_getparams(argv, &i)) == '\0')
|
||||
return (1);
|
||||
return (cmd_cd_switchboard(argv, env, opt));
|
||||
return (cmd_cd_switchboard(argv, env, opt, i));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user