From 98990d5195e93154abbfd16eaa9d1fcc3572bc5c Mon Sep 17 00:00:00 2001 From: Charles Cabergs Date: Thu, 10 Sep 2020 19:46:07 +0200 Subject: Added errorf_ret helper, Removing error to status (just status code and fatal error) --- src/builtin/cd.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) (limited to 'src/builtin/cd.c') diff --git a/src/builtin/cd.c b/src/builtin/cd.c index d7115e5..5f7cdd8 100644 --- a/src/builtin/cd.c +++ b/src/builtin/cd.c @@ -6,7 +6,7 @@ /* By: charles +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/04/01 17:10:20 by charles #+# #+# */ -/* Updated: 2020/07/19 19:05:25 by charles ### ########.fr */ +/* Updated: 2020/09/10 19:40:31 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -24,27 +24,18 @@ int builtin_cd(char **argv, t_env env) (void)env; if (argv[1] != NULL && argv[2] != NULL) - { - errorf("cd: too many arguments\n"); - return (1); - } + return (errorf_ret(1, "cd: too many arguments\n")); if (argv[1] != NULL && argv[1][0] == '\0') return (0); if (argv[1] == NULL) { if ((home = env_search(env, "HOME")) == NULL) - { - errorf("cd: HOME not set\n"); - return (1); - } + return (errorf_ret(1, "cd: HOME not set\n")); argv[1] = home; } errno = 0; if (chdir(argv[1]) == -1) - { - errorf("cd: %s: %s\n", argv[1], strerror(errno)); - return (1); - } + return (errorf_ret(1, "cd: %s: %s\n", argv[1], strerror(errno))); if (!(getcwd(buf, PATH_MAX))) return (1); if (env_export(env, "PWD", buf) == NULL) -- cgit From 65006d0c14d3efa647b3c866ab54bdb1749fa31d Mon Sep 17 00:00:00 2001 From: Charles Cabergs Date: Sat, 12 Sep 2020 17:12:41 +0200 Subject: Added concurrent pipeline (not working with minishell_test for some obscure reason) --- src/builtin/cd.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/builtin/cd.c') diff --git a/src/builtin/cd.c b/src/builtin/cd.c index 5f7cdd8..de1eeb9 100644 --- a/src/builtin/cd.c +++ b/src/builtin/cd.c @@ -6,7 +6,7 @@ /* By: charles +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/04/01 17:10:20 by charles #+# #+# */ -/* Updated: 2020/09/10 19:40:31 by charles ### ########.fr */ +/* Updated: 2020/09/12 11:09:49 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -19,7 +19,7 @@ int builtin_cd(char **argv, t_env env) { - char buf[PATH_MAX]; + char buf[PATH_MAX + 1]; char *home; (void)env; @@ -36,9 +36,9 @@ int builtin_cd(char **argv, t_env env) errno = 0; if (chdir(argv[1]) == -1) return (errorf_ret(1, "cd: %s: %s\n", argv[1], strerror(errno))); - if (!(getcwd(buf, PATH_MAX))) + if (getcwd(buf, PATH_MAX) == NULL) return (1); if (env_export(env, "PWD", buf) == NULL) - return (2); // FIXME malloc error recognition in builtins and cmd + return (EVAL_FATAL); return (0); } -- cgit