From f76d15c78c7218a25ada71e22d2b433df6f880c6 Mon Sep 17 00:00:00 2001 From: y-syo Date: Sun, 14 Jul 2024 14:29:25 +0200 Subject: [PATCH] =?UTF-8?q?=E3=80=8C=F0=9F=94=A8=E3=80=8D=20fix(builtins/e?= =?UTF-8?q?xport):=20fixed=20export=20double=20value=20problem?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/builtins/ft_export.c | 2 +- src/builtins/ft_export_utils.c | 17 ++++++++++------- src/env/env_setters.c | 5 ++++- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/src/builtins/ft_export.c b/src/builtins/ft_export.c index aa461b9..cb28571 100644 --- a/src/builtins/ft_export.c +++ b/src/builtins/ft_export.c @@ -6,7 +6,7 @@ /* By: mmoussou name, "_")) { - ar[i] = ft_calloc(1, ft_vstrlen(2, env->name, env->content) + 2); + ar[i] = ft_calloc(1, ft_vstrlen(2, env->name, env->content) + 4); if (!ar[i]) { ft_free("a", ar); @@ -54,11 +56,12 @@ char **env_get_list(t_env *env) void add_to_env(char *name, char *content, t_env *env) { - if (!content) - content = ft_calloc(1, 1); - if (!content) - return ; - if (env_get_value(name, env)) + t_env *env_t; + + env_t = env; + while (env_t && ft_strcmp(env_t->name, name)) + env_t = env_t->next; + if (env_t) env_edit(name, content, env); else ft_envadd_back(&env, ft_envnew(name, content)); diff --git a/src/env/env_setters.c b/src/env/env_setters.c index 08bea34..bb90241 100644 --- a/src/env/env_setters.c +++ b/src/env/env_setters.c @@ -6,7 +6,7 @@ /* By: mmoussou content) + { + env = env->next; continue ; + } ar[i] = ft_calloc(1, ft_vstrlen(2, env->name, env->content) + 2); if (!ar[i]) {