diff --git a/src/malloc.c b/src/malloc.c index e5f149e..286e4ad 100644 --- a/src/malloc.c +++ b/src/malloc.c @@ -15,14 +15,12 @@ t_zone *create_new_zone(size_t size) { } void defrag(t_block **block) { -ft_printf("defragging !!! sizeof(t_block) == %d\n", sizeof(t_block)); t_block *curr = *block; t_block *to_defrag = curr->next; curr->next = to_defrag->next; // TODO pointer arithmetic good practices curr->size = to_defrag->size + (size_t)(char *)(to_defrag - curr); -ft_printf("done\n"); } void *malloc_block(size_t size, size_t zone_size, t_zone *zone) { @@ -46,14 +44,10 @@ void *malloc_block(size_t size, size_t zone_size, t_zone *zone) { while (curr->next) { if (curr->free == 1 && curr->next->free == 1) { defrag(&curr); - ft_printf("curr %p curr->next %p\n", curr, curr->next); - // alloc if size is large enough - //if (curr->size >= size) } else { curr = curr->next; } if (curr->free == 1 && curr->size >= size) { - write(1, "good\n", 5); curr->size = size; curr->free = 0; return (void *)((char *)curr+ sizeof(t_block));