cd en cours
This commit is contained in:
parent
9cb51bbd8c
commit
5ebf38bf12
10 changed files with 30 additions and 32 deletions
|
|
@ -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\
|
||||
|
|
|
|||
10
42sh/STDUG
Normal file
10
42sh/STDUG
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
[7m[35m41830[33m main.c [1m[34m47 [0m[0m
|
||||
[7m[35m41830[33m main.c [1m[34m24 [0mbefore readline[0m
|
||||
[7m[35m41830[33m readline.c [1m[34m28 [0mreadline stind[0m
|
||||
[7m[35m41830[33m readline.c [1m[34m30 [0mafter stdin[0m
|
||||
[7m[35m41830[33m main.c [1m[34m26 [0mafter readline[0m
|
||||
[7m[35m41830[33m main.c [1m[34m50 [0m[0m
|
||||
[7m[35m41830[33m main.c [1m[34m53 [0m[0m
|
||||
[7m[35m41830[33m main.c [1m[34m47 [0m[0m
|
||||
[7m[35m41830[33m main.c [1m[34m24 [0mbefore readline[0m
|
||||
[7m[35m41830[33m readline.c [1m[34m28 [0mreadline stind[0m
|
||||
5
42sh/libft/objs/cliopts/cliopts_getmap.d
Normal file
5
42sh/libft/objs/cliopts/cliopts_getmap.d
Normal file
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -6,7 +6,7 @@
|
|||
/* By: ariard <ariard@student.42.fr> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* 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 */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
/* By: ariard <ariard@student.42.fr> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* 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);
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
/* By: gwojda <gwojda@student.42.fr> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* 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)
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
/* By: gwojda <gwojda@student.42.fr> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* 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);
|
||||
|
|
|
|||
Loading…
Reference in a new issue