🏗️」 wip(env): not tested, could not work

This commit is contained in:
y-syo
2024-06-09 16:03:09 +02:00
parent cf0a230f28
commit 815689e72f
2 changed files with 13 additions and 11 deletions

18
src/env/env_cmd.c vendored
View File

@ -6,7 +6,7 @@
/* By: mmoussou <mmoussou@student.42angouleme.fr +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/05/22 14:50:01 by mmoussou #+# #+# */
/* Updated: 2024/05/27 13:11:07 by mmoussou ### ########.fr */
/* Updated: 2024/06/09 16:02:05 by mmoussou ### ########.fr */
/* */
/* ************************************************************************** */
@ -16,7 +16,8 @@ int env_append(char *name, char *content, t_env *env)
{
char *new_content;
while (env && ft_strcmp(env->name, name))
while (env && ft_strncmp(env->name, name,
max(ft_strlen(env->name), ft_strlen(name))))
env = env->next;
if (!env)
return (-1);
@ -33,7 +34,8 @@ int env_append(char *name, char *content, t_env *env)
int env_edit(char *name, char *content, t_env *env)
{
while (env && ft_strcmp(env->name, name))
while (env && ft_strncmp(env->name, name,
max(ft_strlen(env->name), ft_strlen(name))))
env = env->next;
if (!env)
return (-1);
@ -46,7 +48,8 @@ int env_delete(char *name, t_env *env)
{
t_env *tmp;
if (!ft_strcmp(env->name, name))
if (!ft_strncmp(env->name, name,
max(ft_strlen(env->name), ft_strlen(name))))
{
ft_free("cc", &env->name, &env->content);
env->name = env->next->name;
@ -54,7 +57,8 @@ int env_delete(char *name, t_env *env)
env->next = env->next->next;
return (0);
}
while (env && env->next && ft_strcmp(env->next->name, name))
while (env && env->next && ft_strncmp(env->next->name, name,
max(ft_strlen(env->next->name), ft_strlen(name))))
env = env->next;
if (!env || !env->next)
return (-1);
@ -65,9 +69,9 @@ int env_delete(char *name, t_env *env)
return (0);
}
char *env_get_value(char *name, t_env *env)
char *env_getn_value(char *name, t_env *env, int n)
{
while (env && ft_strcmp(env->name, name))
while (env && ft_strncmp(env->name, name, n))
env = env->next;
if (env)
return (env->content);

View File

@ -3,10 +3,10 @@
/* ::: :::::::: */
/* split_cmd.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: adjoly <adjoly@student.42angouleme.fr> +#+ +:+ +#+ */
/* By: mmoussou <mmoussou@student.42angouleme.fr +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/05/04 15:00:32 by adjoly #+# #+# */
/* Updated: 2024/06/04 13:15:47 by adjoly ### ########.fr */
/* Updated: 2024/06/08 18:31:42 by mmoussou ### ########.fr */
/* */
/* ************************************************************************** */
@ -15,10 +15,8 @@
t_cmd *split_cmd(char *cmd_av, t_cmd *cmd)
{
char *tmp;
char **split;
tmp = cmd_av;
split = ft_split(cmd_av, ' ');
cmd->cmd = ft_strdup(*split);
cmd->argv = split;