/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* ft_exit.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: mmoussou 2) { ft_printf_fd(2, "minishell: exit: too many arguments\n"); get_exit_code(1); return ; } return_value = ft_atoi(argv[1]); if (return_value == -1) return_value += 256; free_exit(env, env_array); exit(get_exit_code(return_value)); } void ft_exit(char **argv, int ac, char **env_array, t_env *env) { printf("exit\n"); if (ac < 2) { free_exit(env, env_array); exit(get_exit_code(-1)); } if (check_exit_value(argv[1]) || (ft_atoi(argv[1]) % 10 != ft_atol(argv[1]) % 10)) { ft_printf_fd(2, "minishell: exit: %s: numeric argument required\n", argv[1]); free_exit(env, env_array); exit(2); } else exit_args_handler(argv, ac, env_array, env); }