/* ************************************************************************** */ /* */ /* :::::::: */ /* environment_del.c :+: :+: */ /* +:+ */ /* By: whaffman +#+ */ /* +#+ */ /* Created: 2025/02/11 14:17:53 by whaffman #+# #+# */ /* Updated: 2025/02/26 16:09:12 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ #include "minishell.h" void environment_del(t_minishell *msh, char *name) { t_list *prev; t_list *current; t_list *next; t_environment *env; prev = NULL; next = NULL; current = msh->environment; while (current != NULL) { env = (t_environment *)current->content; if (ft_strncmp(env->name, name, ft_strlen(name) + 1) == 0) { next = current->next; environment_free(msh, current->content); free_safe(msh, (void **)&(current)); if (prev == NULL) msh->environment = next; else prev->next = next; return ; } prev = current; current = current->next; } }