cvs: ZendEngine2 / zend_alloc.c zend_alloc.h

From: Date: Tue, 25 May 2004 10:09:47 +0000
Subject: cvs: ZendEngine2 / zend_alloc.c zend_alloc.h
Groups: php.zend-engine.cvs 
Request: Send a blank email to php-zend-engine-cvs+get-2661@lists.php.net to get a copy of this message
andi Tue May 25 06:09:47 2004 EDT Modified files: /ZendEngine2 zend_alloc.c zend_alloc.h Log: - More fixes http://cvs.php.net/diff.php/ZendEngine2/zend_alloc.c?r1=1.133&r2=1.134&ty=u Index: ZendEngine2/zend_alloc.c diff -u ZendEngine2/zend_alloc.c:1.133 ZendEngine2/zend_alloc.c:1.134 --- ZendEngine2/zend_alloc.c:1.133 Tue May 25 05:25:22 2004 +++ ZendEngine2/zend_alloc.c Tue May 25 06:09:46 2004 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: zend_alloc.c,v 1.133 2004/05/25 09:25:22 andi Exp $ */ +/* $Id: zend_alloc.c,v 1.134 2004/05/25 10:09:46 andi Exp $ */ #include "zend.h" #include "zend_alloc.h" @@ -99,6 +99,7 @@ #endif +#if ZEND_DEBUG || !defined(ZEND_MM) #define REMOVE_POINTER_FROM_LIST(p) \ if (p==AG(head)) { \ AG(head) = p->pNext; \ @@ -108,14 +109,21 @@ if (p->pNext) { \ p->pNext->pLast = p->pLast; \ } +#else +#define REMOVE_POINTER_FROM_LIST(p) +#endif -#define ADD_POINTER_TO_LIST(p) \ +#if ZEND_DEBUG || !defined(ZEND_MM) +#define ADD_POINTER_TO_LIST(p) \ p->pNext = AG(head); \ if (AG(head)) { \ AG(head)->pLast = p; \ } \ AG(head) = p; \ p->pLast = (zend_mem_header *) NULL; +#else +#define ADD_POINTER_TO_LIST(p) +#endif #define DECLARE_CACHE_VARS() \ unsigned int real_size; \ @@ -189,9 +197,7 @@ return (void *)p; } p->cached = 0; -#if ZEND_DEBUG ADD_POINTER_TO_LIST(p); -#endif p->size = size; /* Save real size for correct cache output */ #if ZEND_DEBUG p->filename = __zend_filename; @@ -272,9 +278,7 @@ } #endif HANDLE_BLOCK_INTERRUPTIONS(); -#if ZEND_DEBUG REMOVE_POINTER_FROM_LIST(p); -#endif #if MEMORY_LIMIT AG(allocated_memory) -= SIZE; @@ -337,9 +341,7 @@ AG(allocated_memory_peak) = AG(allocated_memory); } #endif -#if ZEND_DEBUG REMOVE_POINTER_FROM_LIST(p); -#endif p = (zend_mem_header *) ZEND_DO_REALLOC(p, sizeof(zend_mem_header)+MEM_HEADER_PADDING+SIZE+END_MAGIC_SIZE); if (!p) { if (!allow_failure) { @@ -350,15 +352,11 @@ exit(1); #endif } -#if ZEND_DEBUG ADD_POINTER_TO_LIST(orig); -#endif HANDLE_UNBLOCK_INTERRUPTIONS(); return (void *)NULL; } -#if ZEND_DEBUG ADD_POINTER_TO_LIST(p); -#endif #if ZEND_DEBUG p->filename = __zend_filename; p->lineno = __zend_lineno; @@ -470,7 +468,7 @@ ZEND_API void shutdown_memory_manager(int silent, int full_shutdown TSRMLS_DC) { -#if ZEND_DEBUG +#if ZEND_DEBUG || !defined(ZEND_MM) zend_mem_header *p, *t; #endif #if ZEND_DEBUG @@ -489,9 +487,7 @@ # if MEMORY_LIMIT AG(allocated_memory) -= REAL_SIZE(ptr->size); # endif -# if ZEND_DEBUG REMOVE_POINTER_FROM_LIST(ptr); -# endif ZEND_DO_FREE(ptr); } AG(cache_count)[i] = 0; @@ -500,10 +496,11 @@ #endif /* !ZEND_DISABLE_MEMORY_CACHE */ #if defined(ZEND_MM) && !ZEND_DEBUG + zend_mm_shutdown(&AG(mm_heap)); if (full_shutdown) { - zend_mm_shutdown(&AG(mm_heap)); return; } + zend_mm_startup(&AG(mm_heap), 256*1024); #elif defined(ZEND_WIN32) && !ZEND_DEBUG if (full_shutdown && AG(memory_heap)) { HeapDestroy(AG(memory_heap)); @@ -528,13 +525,13 @@ } #endif /* ZEND_ENABLE_FAST_CACHE */ -#if ZEND_DEBUG +#if ZEND_DEBUG || !defined(ZEND_MM) p = AG(head); t = AG(head); while (t) { if (!t->cached) { #if ZEND_DEBUG - if (!t->cached && !t->reported) { + if (!t->reported) { zend_mem_header *iterator; int total_leak=0, total_leak_count=0; @@ -625,10 +622,11 @@ #endif #if defined(ZEND_MM) && ZEND_DEBUG + zend_mm_shutdown(&AG(mm_heap)); if (full_shutdown) { - zend_mm_shutdown(&AG(mm_heap)); return; } + zend_mm_startup(&AG(mm_heap), 256*1024); #elif defined(ZEND_WIN32) && ZEND_DEBUG if (full_shutdown && AG(memory_heap)) { HeapDestroy(AG(memory_heap)); http://cvs.php.net/diff.php/ZendEngine2/zend_alloc.h?r1=1.51&r2=1.52&ty=u Index: ZendEngine2/zend_alloc.h diff -u ZendEngine2/zend_alloc.h:1.51 ZendEngine2/zend_alloc.h:1.52 --- ZendEngine2/zend_alloc.h:1.51 Tue May 25 05:25:22 2004 +++ ZendEngine2/zend_alloc.h Tue May 25 06:09:46 2004 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: zend_alloc.h,v 1.51 2004/05/25 09:25:22 andi Exp $ */ +/* $Id: zend_alloc.h,v 1.52 2004/05/25 10:09:46 andi Exp $ */ #ifndef ZEND_ALLOC_H #define ZEND_ALLOC_H @@ -46,7 +46,7 @@ THREAD_T thread_id; # endif #endif -#if ZEND_DEBUG +#if ZEND_DEBUG || !defined(ZEND_MM) struct _zend_mem_header *pNext; struct _zend_mem_header *pLast; #endif

« previous php.zend-engine.cvs (#2661) next »