@@ -927,7 +927,9 @@ static zend_always_inline void zend_mm_chunk_init(zend_mm_heap *heap, zend_mm_ch
927927{
928928 chunk -> heap = heap ;
929929 chunk -> next = heap -> main_chunk ;
930+ ZEND_MM_UNPOISON_CHUNK_HDR (heap -> main_chunk );
930931 chunk -> prev = heap -> main_chunk -> prev ;
932+ ZEND_MM_POISON_CHUNK_HDR (heap -> main_chunk , heap );
931933 chunk -> prev -> next = chunk ;
932934 chunk -> next -> prev = chunk ;
933935 /* mark first pages as allocated */
@@ -1164,7 +1166,9 @@ static void *zend_mm_alloc_pages(zend_mm_heap *heap, uint32_t pages_count ZEND_F
11641166 /* move chunk into the head of the linked-list */
11651167 chunk -> prev -> next = chunk -> next ;
11661168 chunk -> next -> prev = chunk -> prev ;
1169+ ZEND_MM_UNPOISON_CHUNK_HDR (heap -> main_chunk );
11671170 chunk -> next = heap -> main_chunk -> next ;
1171+ ZEND_MM_POISON_CHUNK_HDR (heap -> main_chunk , heap );
11681172 chunk -> prev = heap -> main_chunk ;
11691173 chunk -> prev -> next = chunk ;
11701174 chunk -> next -> prev = chunk ;
@@ -2614,7 +2618,7 @@ ZEND_API void zend_mm_shutdown(zend_mm_heap *heap, bool full, bool silent)
26142618 heap -> chunks_count -- ;
26152619 heap -> cached_chunks_count ++ ;
26162620 }
2617- ZEND_MM_POISON_CHUNK_HDR (p , heap );
2621+ ZEND_MM_POISON_CHUNK_HDR (heap -> main_chunk , heap );
26182622
26192623
26202624 if (full ) {
0 commit comments