diff options
| author | Charles Cabergs <me@cacharle.xyz> | 2020-10-11 21:11:57 +0200 |
|---|---|---|
| committer | Charles Cabergs <me@cacharle.xyz> | 2020-10-11 21:11:57 +0200 |
| commit | 1352a826b11148a23633504c9d3c246aeaacb1f7 (patch) | |
| tree | a9e6a44592c2a9fc185037a5f679a4f26bc80cb1 | |
| parent | a4ceb5974d1b7dcdd12cc81b7eb07893ea16c8ad (diff) | |
| download | minishell-1352a826b11148a23633504c9d3c246aeaacb1f7.tar.gz minishell-1352a826b11148a23633504c9d3c246aeaacb1f7.tar.bz2 minishell-1352a826b11148a23633504c9d3c246aeaacb1f7.zip | |
Fixing empty cd segfault
| m--------- | libft | 0 | ||||
| m--------- | minishell_test | 0 | ||||
| -rw-r--r-- | src/builtin/cd.c | 11 |
3 files changed, 5 insertions, 6 deletions
diff --git a/libft b/libft -Subproject 39951f08a2938683d800c677c3a244e9ff8dbe1 +Subproject c33343322ef66d96337533082313b1256862023 diff --git a/minishell_test b/minishell_test -Subproject fb0a727a9885b80b855f470ae6d5c1bfac61443 +Subproject a36a27b8ca85adf57b2a9926a53e74e3a3863d3 diff --git a/src/builtin/cd.c b/src/builtin/cd.c index a350cf4..b566272 100644 --- a/src/builtin/cd.c +++ b/src/builtin/cd.c @@ -6,7 +6,7 @@ /* By: charles <charles@student.42.fr> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/04/01 17:10:20 by charles #+# #+# */ -/* Updated: 2020/10/09 12:44:55 by cacharle ### ########.fr */ +/* Updated: 2020/10/11 21:11:40 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -37,13 +37,12 @@ int builtin_cd(char **argv, t_env env) if (argv[1] != NULL && argv[1][0] == '\0') return (env_export(env, "OLDPWD", oldwd) == NULL ? EVAL_FATAL : 0); if (argv[1] == NULL) - { if ((home = env_search(env, "HOME", NULL)) == NULL) return (errorf_ret(1, "cd: HOME not set\n")); - argv[1] = home; - } - if (chdir(argv[1]) == -1) - return (errorf_ret(1, "cd: %s: %s\n", argv[1], strerror(errno))); + else + home = argv[1]; + if (chdir(home) == -1) + return (errorf_ret(1, "cd: %s: %s\n", home, strerror(errno))); if (env_export(env, "OLDPWD", oldwd) == NULL) return (EVAL_FATAL); if (getcwd(cwd, PATH_MAX) == NULL) |
