diff options
Diffstat (limited to 'libft/ft_lstclear_bonus.c')
-rw-r--r-- | libft/ft_lstclear_bonus.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libft/ft_lstclear_bonus.c b/libft/ft_lstclear_bonus.c new file mode 100644 index 0000000..8d97b9c --- /dev/null +++ b/libft/ft_lstclear_bonus.c @@ -0,0 +1,34 @@ +/* ************************************************************************** */ +/* LE - / */ +/* / */ +/* ft_lstclear.c .:: .:/ . .:: */ +/* +:+:+ +: +: +:+:+ */ +/* By: rbousset <marvin@le-101.fr> +:+ +: +: +:+ */ +/* #+# #+ #+ #+# */ +/* Created: 2019/10/13 10:19:53 by rbousset #+# ## ## #+# */ +/* Updated: 2019/10/13 13:52:03 by rbousset ### #+. /#+ ###.fr */ +/* / */ +/* / */ +/* ************************************************************************** */ + +#include "libft.h" +#include <stdlib.h> + +void + ft_lstclear(t_list **lst, void (*del)(void *)) +{ + t_list *tmp; + t_list *renext; + + if (!lst) + return ; + tmp = *lst; + while (tmp) + { + renext = tmp->next; + del(tmp->content); + free(tmp); + tmp = renext; + } + *lst = NULL; +} |