#include "libft.h" static void delete(t_list **deleted, void (*del)(void*)); void ft_lstremove_back(t_list **lst, void (*del)(void*)) { if (lst == NULL || del == NULL) return; if ((*lst)->next == NULL) return delete(lst, del); t_list *cur = *lst; while (cur->next != NULL && cur->next->next != NULL) cur = cur->next; delete(&(cur->next), del); } static void delete(t_list **deleted, void (*del)(void*)) { del(*deleted); free(*deleted); *deleted = NULL; }