aboutsummaryrefslogtreecommitdiff
path: root/src/builtin
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-04-02 15:50:13 +0200
committerCharles <sircharlesaze@gmail.com>2020-04-03 08:57:45 +0200
commite5393671a265e1c301c6c303f21f938c4cf9ca75 (patch)
tree0190ff9ba762cf820b1846b01adc339092370e2c /src/builtin
parentf66cb8f28a2779159baeef6ea91a7684d59cc295 (diff)
downloadminishell-e5393671a265e1c301c6c303f21f938c4cf9ca75.tar.gz
minishell-e5393671a265e1c301c6c303f21f938c4cf9ca75.tar.bz2
minishell-e5393671a265e1c301c6c303f21f938c4cf9ca75.zip
Evaluation pipe frame (not tested)
Diffstat (limited to 'src/builtin')
-rw-r--r--src/builtin/cd.c10
-rw-r--r--src/builtin/echo.c6
-rw-r--r--src/builtin/export.c4
-rw-r--r--src/builtin/unset.c5
4 files changed, 12 insertions, 13 deletions
diff --git a/src/builtin/cd.c b/src/builtin/cd.c
index 66f1f81..1a7c70e 100644
--- a/src/builtin/cd.c
+++ b/src/builtin/cd.c
@@ -6,7 +6,7 @@
/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/04/01 17:10:20 by charles #+# #+# */
-/* Updated: 2020/04/01 22:15:49 by charles ### ########.fr */
+/* Updated: 2020/04/02 11:33:15 by charles ### ########.fr */
/* */
/* ************************************************************************** */
@@ -19,14 +19,10 @@
int builtin_cd(char **argv, t_env env)
{
- char *path;
-
- path = argv[1];
+ (void)env;
if (argv[1] == NULL)
- path = env_search(env, "HOME");
- if (path == NULL)
return (1);
- if (chdir(path) == -1)
+ if (chdir(argv[1]) == -1)
return (1);
return (0);
}
diff --git a/src/builtin/echo.c b/src/builtin/echo.c
index 9b7a8f6..886c2ca 100644
--- a/src/builtin/echo.c
+++ b/src/builtin/echo.c
@@ -6,7 +6,7 @@
/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/04/01 17:10:47 by charles #+# #+# */
-/* Updated: 2020/04/01 17:10:48 by charles ### ########.fr */
+/* Updated: 2020/04/02 11:18:16 by charles ### ########.fr */
/* */
/* ************************************************************************** */
@@ -22,8 +22,8 @@ int builtin_echo(char **argv, t_env env)
bool newline;
(void)env;
- newline = ft_strcmp(argv[1], "-n") == 0;
- if (newline)
+ newline = !ft_strcmp(argv[1], "-n") == 0;
+ if (!newline)
argv++;
while (*++argv != NULL)
{
diff --git a/src/builtin/export.c b/src/builtin/export.c
index 650a421..3636407 100644
--- a/src/builtin/export.c
+++ b/src/builtin/export.c
@@ -6,7 +6,7 @@
/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/04/01 17:11:34 by charles #+# #+# */
-/* Updated: 2020/04/01 22:37:47 by charles ### ########.fr */
+/* Updated: 2020/04/02 10:46:27 by charles ### ########.fr */
/* */
/* ************************************************************************** */
@@ -25,7 +25,7 @@ int builtin_export(char **argv, t_env env)
return (1);
if ((tmp = ft_strdup(argv[1])) == NULL)
return (2);
- if (ft_vecpush(env, tmp) == NULL)
+ if (ft_vecinsert(env, env->size - 1, tmp) == NULL)
return (2); // internal error code
return (0);
}
diff --git a/src/builtin/unset.c b/src/builtin/unset.c
index ffcf60f..146b755 100644
--- a/src/builtin/unset.c
+++ b/src/builtin/unset.c
@@ -6,7 +6,7 @@
/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/04/01 17:10:51 by charles #+# #+# */
-/* Updated: 2020/04/01 23:05:33 by charles ### ########.fr */
+/* Updated: 2020/04/02 11:17:03 by charles ### ########.fr */
/* */
/* ************************************************************************** */
@@ -25,10 +25,13 @@ int builtin_unset(char **argv, t_env env)
return (1);
i = 0;
while (i < env->size)
+ {
if (ft_strncmp(env->data[i], argv[1], ft_strlen(argv[1])) == 0)
{
ft_vecremove(env, i, free);
return (0);
}
+ i++;
+ }
return (1);
}