From b23760c78e2d087d84311925f2c014aa7c4c1635 Mon Sep 17 00:00:00 2001 From: Dominik Kaiser Date: Mon, 11 Mar 2024 13:26:26 +0100 Subject: lstmap --- ft_lstmap_bonus.c | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) (limited to 'ft_lstmap_bonus.c') diff --git a/ft_lstmap_bonus.c b/ft_lstmap_bonus.c index 91eabfc..1e4b867 100644 --- a/ft_lstmap_bonus.c +++ b/ft_lstmap_bonus.c @@ -6,7 +6,7 @@ /* By: dkaiser content)); - if (!new) + content = f(lst->content); + cur_new = ft_lstnew(content); + if (!cur_new) { - free(new); + del(content); return (NULL); } - result = new; + result = cur_new; + if (!lst->next) + return (result); lst = lst->next; while (lst) { - new->next = ft_lstnew(f(lst->content)); - if (!new->next) + content = f(lst->content); + cur_new->next = ft_lstnew(content); + if (!cur_new->next) { - ft_lstclear(&new, del); + del(content); + ft_lstclear(&result, del); return (NULL); } - new = new->next; + if (!lst->next) + return (result); lst = lst->next; + cur_new = cur_new->next; } - // new->next = NULL; return (result); } -- cgit v1.2.3