From fdc18469fd156198ba16884f80203b48e77eacae Mon Sep 17 00:00:00 2001 From: Anonymus Raccoon Date: Sun, 24 May 2020 22:32:20 +0200 Subject: [PATCH] Making cd exit on errors when no window is here --- src/builtin/builtin_manager.c | 5 +++-- tests/tester/tests | 10 ---------- 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/src/builtin/builtin_manager.c b/src/builtin/builtin_manager.c index 7ec053f..98bc8e3 100644 --- a/src/builtin/builtin_manager.c +++ b/src/builtin/builtin_manager.c @@ -47,9 +47,9 @@ int builtin_cd(char **argv, env_t *env) char *old = getcwd(NULL, 0); if (get_argc(argv) > 2) { - write(2, "cd: Too many arguments.\n", 25); + dprintf(2, "cd: Too many arguments.\n"); env->vars = my_setenv(env->vars, "?", "1"); - return (0); + return (-1 * !env->window); } env->vars = my_setenv(env->vars, "?", "0"); if (!argv[1]) @@ -59,6 +59,7 @@ int builtin_cd(char **argv, env_t *env) if (chdir(path) < 0) { printf("%s: %s.\n", path, strerror(errno)); env->vars = my_setenv(env->vars, "?", "1"); + return (-1 * !env->window); } else env->env = my_setenv(env->env, "OLDPWD", old); free(old); diff --git a/tests/tester/tests b/tests/tester/tests index d7f5d86..bda695b 100644 --- a/tests/tester/tests +++ b/tests/tester/tests @@ -289,16 +289,6 @@ TESTS= echo 'echo "$"' [928-END] -[929] -NAME="929" -SETUP="" -CLEAN="" -TESTS= - echo 'echo "\t"' - echo 'echo $' - echo 'echo $?' -[929-END] - [930] NAME="930" SETUP=""