aboutsummaryrefslogtreecommitdiff
path: root/src/vec/ft_vecremove.c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-06-09 16:50:48 +0200
committerCharles <sircharlesaze@gmail.com>2020-06-09 16:50:48 +0200
commitf1babc364b2507cb8999d3132941b056feac37cd (patch)
tree91aa7d449799bc1a5aa4d28ce6467fb38c8be150 /src/vec/ft_vecremove.c
parent8b8b8b8a35524f0ee73ac74c947a325ea54b2880 (diff)
downloadlibft-f1babc364b2507cb8999d3132941b056feac37cd.tar.gz
libft-f1babc364b2507cb8999d3132941b056feac37cd.tar.bz2
libft-f1babc364b2507cb8999d3132941b056feac37cd.zip
Added a few vector helper functions
Diffstat (limited to 'src/vec/ft_vecremove.c')
-rw-r--r--src/vec/ft_vecremove.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/vec/ft_vecremove.c b/src/vec/ft_vecremove.c
index d24ba29..28ea541 100644
--- a/src/vec/ft_vecremove.c
+++ b/src/vec/ft_vecremove.c
@@ -6,7 +6,7 @@
/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/04/01 22:45:07 by charles #+# #+# */
-/* Updated: 2020/04/01 22:58:21 by charles ### ########.fr */
+/* Updated: 2020/06/09 13:28:26 by charles ### ########.fr */
/* */
/* ************************************************************************** */
@@ -21,11 +21,10 @@
void ft_vecremove(t_ftvec *vec, size_t i, void (*del)(void *elem))
{
- if (vec->size == 0 || i > vec->size - 1)
+ void *tmp;
+
+ if ((tmp = ft_vectake(vec, i)) == NULL)
return ;
if (del != NULL)
- del(vec->data[i]);
- ft_memmove(vec->data + i, vec->data + i + 1,
- (vec->size - i - 1) * sizeof(void*));
- vec->size--;
+ del(tmp);
}