From 5ebf38bf12921dcd8b9267f8b8316354366b5786 Mon Sep 17 00:00:00 2001 From: Antoine Riard Date: Sat, 25 Mar 2017 18:05:09 +0100 Subject: [PATCH] cd en cours --- 42sh/Makefile | 1 - 42sh/STDUG | 10 ++++++++++ 42sh/libft/objs/cliopts/cliopts_getmap.d | 5 +++++ 42sh/libft/objs/cliopts/cliopts_has.d | 5 ----- 42sh/objs/builtin/builtin_new_cd.d | 11 ----------- 42sh/objs/builtin/error_msg.d | 11 ----------- 42sh/src/builtin/bt_cd_process_symlink.c | 2 +- 42sh/src/builtin/builtin_cd.c | 6 +++++- 42sh/src/line_editing/readline.c | 4 +++- 42sh/src/main/main.c | 7 ++++++- 10 files changed, 30 insertions(+), 32 deletions(-) create mode 100644 42sh/STDUG create mode 100644 42sh/libft/objs/cliopts/cliopts_getmap.d delete mode 100644 42sh/libft/objs/cliopts/cliopts_has.d delete mode 100644 42sh/objs/builtin/builtin_new_cd.d delete mode 100644 42sh/objs/builtin/error_msg.d diff --git a/42sh/Makefile b/42sh/Makefile index 21b59435..6e004cc0 100644 --- a/42sh/Makefile +++ b/42sh/Makefile @@ -43,7 +43,6 @@ builtin/builtin_func.c\ builtin/builtin_hash.c\ builtin/builtin_history.c\ builtin/builtin_math.c\ -builtin/builtin_new_cd.c\ builtin/builtin_read.c\ builtin/builtin_setenv.c\ builtin/builtin_unset.c\ diff --git a/42sh/STDUG b/42sh/STDUG new file mode 100644 index 00000000..05e36af8 --- /dev/null +++ b/42sh/STDUG @@ -0,0 +1,10 @@ +41830 main.c 47  +41830 main.c 24 before readline +41830 readline.c 28 readline stind +41830 readline.c 30 after stdin +41830 main.c 26 after readline +41830 main.c 50  +41830 main.c 53  +41830 main.c 47  +41830 main.c 24 before readline +41830 readline.c 28 readline stind diff --git a/42sh/libft/objs/cliopts/cliopts_getmap.d b/42sh/libft/objs/cliopts/cliopts_getmap.d new file mode 100644 index 00000000..cf525b4a --- /dev/null +++ b/42sh/libft/objs/cliopts/cliopts_getmap.d @@ -0,0 +1,5 @@ +objs/cliopts/cliopts_getmap.o: src/cliopts/cliopts_getmap.c \ + includes/cliopts.h includes/libft.h includes/ft_types.h \ + includes/error.h includes/color.h includes/lst.h includes/dlst.h \ + includes/btree.h includes/str.h includes/sstr.h includes/math.h \ + includes/mytime.h includes/get_next_line.h includes/sys.h diff --git a/42sh/libft/objs/cliopts/cliopts_has.d b/42sh/libft/objs/cliopts/cliopts_has.d deleted file mode 100644 index bd0ba935..00000000 --- a/42sh/libft/objs/cliopts/cliopts_has.d +++ /dev/null @@ -1,5 +0,0 @@ -objs/cliopts/cliopts_has.o: src/cliopts/cliopts_has.c includes/cliopts.h \ - includes/libft.h includes/ft_types.h includes/error.h includes/color.h \ - includes/lst.h includes/dlst.h includes/btree.h includes/str.h \ - includes/sstr.h includes/math.h includes/mytime.h \ - includes/get_next_line.h includes/sys.h diff --git a/42sh/objs/builtin/builtin_new_cd.d b/42sh/objs/builtin/builtin_new_cd.d deleted file mode 100644 index 2dca6a3d..00000000 --- a/42sh/objs/builtin/builtin_new_cd.d +++ /dev/null @@ -1,11 +0,0 @@ -objs/builtin/builtin_new_cd.o: src/builtin/builtin_new_cd.c \ - includes/minishell.h includes/../libft/includes/libft.h \ - libft/includes/ft_types.h libft/includes/error.h \ - libft/includes/libft.h libft/includes/color.h libft/includes/cliopts.h \ - libft/includes/lst.h libft/includes/dlst.h libft/includes/btree.h \ - libft/includes/str.h libft/includes/sstr.h libft/includes/math.h \ - libft/includes/mytime.h libft/includes/get_next_line.h \ - libft/includes/sys.h includes/types.h includes/lexer.h \ - includes/parser.h includes/ft_readline.h includes/job_control.h \ - includes/exec.h includes/builtin.h includes/builtin_read.h \ - includes/glob.h includes/completion.h includes/hash.h diff --git a/42sh/objs/builtin/error_msg.d b/42sh/objs/builtin/error_msg.d deleted file mode 100644 index 5f9c377d..00000000 --- a/42sh/objs/builtin/error_msg.d +++ /dev/null @@ -1,11 +0,0 @@ -objs/builtin/error_msg.o: src/builtin/error_msg.c includes/minishell.h \ - includes/../libft/includes/libft.h libft/includes/ft_types.h \ - libft/includes/error.h libft/includes/libft.h libft/includes/color.h \ - libft/includes/cliopts.h libft/includes/lst.h libft/includes/dlst.h \ - libft/includes/btree.h libft/includes/str.h libft/includes/sstr.h \ - libft/includes/math.h libft/includes/mytime.h \ - libft/includes/get_next_line.h libft/includes/sys.h includes/types.h \ - includes/lexer.h includes/parser.h includes/ft_readline.h \ - includes/job_control.h includes/exec.h includes/builtin.h \ - includes/builtin_read.h includes/glob.h includes/completion.h \ - includes/hash.h diff --git a/42sh/src/builtin/bt_cd_process_symlink.c b/42sh/src/builtin/bt_cd_process_symlink.c index 905d913d..cdf982b4 100644 --- a/42sh/src/builtin/bt_cd_process_symlink.c +++ b/42sh/src/builtin/bt_cd_process_symlink.c @@ -6,7 +6,7 @@ /* By: ariard +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2017/03/25 15:14:55 by ariard #+# #+# */ -/* Updated: 2017/03/25 17:05:24 by ariard ### ########.fr */ +/* Updated: 2017/03/25 17:07:16 by ariard ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/42sh/src/builtin/builtin_cd.c b/42sh/src/builtin/builtin_cd.c index 7cdffbbe..c6462c86 100644 --- a/42sh/src/builtin/builtin_cd.c +++ b/42sh/src/builtin/builtin_cd.c @@ -6,7 +6,7 @@ /* By: ariard +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2017/03/25 02:00:40 by ariard #+# #+# */ -/* Updated: 2017/03/25 16:59:37 by ariard ### ########.fr */ +/* Updated: 2017/03/25 17:08:31 by ariard ### ########.fr */ /* */ /* ************************************************************************** */ @@ -83,12 +83,16 @@ int builtin_cd(const char *path, char *const av[], (void)envp; (void)path; data.flag = CD_OPT_L; + DG(); if (cliopts_get((char **)av, g_cdopts, &data)) return (1); + DG("after parsing opt"); if (data.av_data[0] && data.av_data[1]) return (SH_ERR(CD_USAGE)); if (!(target = cd_operand_exist(*data.av_data))) return (1); + DG(); + return (0); setwd("OLDPWD"); if (!target) target = cd_operand_begin(*data.av_data); diff --git a/42sh/src/line_editing/readline.c b/42sh/src/line_editing/readline.c index 1fc2ab2b..c4123c99 100644 --- a/42sh/src/line_editing/readline.c +++ b/42sh/src/line_editing/readline.c @@ -6,7 +6,7 @@ /* By: gwojda +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/12/15 14:19:48 by gwojda #+# #+# */ -/* Updated: 2017/03/22 16:49:30 by gwojda ### ########.fr */ +/* Updated: 2017/03/25 17:18:41 by ariard ### ########.fr */ /* */ /* ************************************************************************** */ @@ -25,7 +25,9 @@ int readline(int has_prompt, char **input) return (ret); } readline_init(has_prompt); + DG("readline stind"); ret = ft_read_stdin(input); + DG("after stdin"); if (ret < 0) return (ret); if (data_singleton()->line.input) diff --git a/42sh/src/main/main.c b/42sh/src/main/main.c index de3ee0de..f0096d41 100644 --- a/42sh/src/main/main.c +++ b/42sh/src/main/main.c @@ -6,7 +6,7 @@ /* By: gwojda +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2017/03/20 14:45:40 by gwojda #+# #+# */ -/* Updated: 2017/03/24 22:52:56 by ariard ### ########.fr */ +/* Updated: 2017/03/25 17:14:28 by ariard ### ########.fr */ /* */ /* ************************************************************************** */ @@ -21,7 +21,9 @@ static int do_readline_routine(char **stream) data = data_singleton(); has_prompt = !(get_lexer_stack(data->lexer) || data->parser.state == UNDEFINED || data->lexer.state == HEREDOC); + DG("before readline"); ret = readline(has_prompt, stream); + DG("after readline"); if (ret == -1) { ft_strdel(stream); @@ -42,10 +44,13 @@ static int handle_instruction(t_list **token, t_btree **ast) data = data_singleton(); while (1) { + DG(); if ((ret = do_readline_routine(&stream)) > 0) return (ret); + DG(); if (do_lexer_routine(token, stream) > 0) continue ; + DG(); if ((ret = do_parser_routine(token, ast)) == 1 && SH_NO_INTERACTIVE(data->opts)) return (ret);