From 01ba151cc3dbd35bdd3d2ba3dfe15ae32a02cf30 Mon Sep 17 00:00:00 2001 From: Andi Gutmans Date: Tue, 14 Oct 2003 14:44:19 +0000 Subject: [PATCH] - Fix the fix by making sure the new block is in the right free list. --- Zend/zend_mm.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Zend/zend_mm.c b/Zend/zend_mm.c index 7e3511542b..c74753e3bb 100644 --- a/Zend/zend_mm.c +++ b/Zend/zend_mm.c @@ -387,10 +387,12 @@ void *zend_mm_realloc(zend_mm_heap *heap, void *p, size_t size) new_next_block = ZEND_MM_BLOCK_AT(mm_block, mm_block->size); if (new_next_block != next_block) { /* A new free block was created */ + zend_mm_remove_from_free_list(heap, (zend_mm_free_block *) new_next_block); zend_mm_remove_from_free_list(heap, (zend_mm_free_block *) next_block); new_next_block->size += next_block->size; /* update the next block's prev_size */ ZEND_MM_BLOCK_AT(mm_block, new_next_block->size)->prev_size = new_next_block->size; + zend_mm_add_to_free_list(heap, (zend_mm_free_block *) new_next_block); } } return p; -- 2.50.1