From 178dd8bffcaf7cb0c8adfb5d0ae9d8ba3192dc42 Mon Sep 17 00:00:00 2001 From: guamss Date: Fri, 30 Jun 2023 16:09:58 +0200 Subject: [PATCH] (perf): conditions inutiles --- src/exec/exec.c | 24 ++++++++---------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/src/exec/exec.c b/src/exec/exec.c index a05a6d8..7c6714b 100644 --- a/src/exec/exec.c +++ b/src/exec/exec.c @@ -32,28 +32,20 @@ int change_directory(char** args, lst** env) { char* path = get_env_variable(env, "HOME"); chdir(path); - edit_env_variable(env, "OLDPWD", oldpwd); - if (getcwd(cwd, sizeof(cwd)) != NULL) - { - edit_env_variable(env, "PWD", cwd); - } - return 0; } - if (chdir(args[1]) == 0) + else if (len((void**)args)>2) { - edit_env_variable(env, "OLDPWD", oldpwd); - if (getcwd(cwd, sizeof(cwd)) != NULL) - { - edit_env_variable(env, "PWD", cwd); - } - return 0; + dprintf(2, "cd : Trop d'arguments!\n"); + return 1; } - else + else if (chdir(args[1]) != 0) { dprintf(2, "Mauvais chemin : %s\n", args[1]); return 1; - } - + } + edit_env_variable(env, "OLDPWD", oldpwd); + if (getcwd(cwd, sizeof(cwd)) != NULL) + edit_env_variable(env, "PWD", cwd); return 0; }