]> granicus.if.org Git - php/commitdiff
- Fix crash bug and clean up a bit.
authorAndi Gutmans <andi@php.net>
Mon, 24 Jun 2002 17:47:46 +0000 (17:47 +0000)
committerAndi Gutmans <andi@php.net>
Mon, 24 Jun 2002 17:47:46 +0000 (17:47 +0000)
Zend/zend_alloc.c

index 2074b665e240befeeb77dcff62c30523f0cae678..f64d48799eebc327284a6995da84dc5c896f54c4 100644 (file)
@@ -445,15 +445,15 @@ ZEND_API void shutdown_memory_manager(int silent, int clean_cache TSRMLS_DC)
 #ifdef ZEND_MM
        if (clean_cache) {
                zend_mm_shutdown(&AG(mm_heap));
-               return;
        }
+       return;
 #elif defined(ZEND_WIN32) && !ZEND_DEBUG
        if (clean_cache && AG(memory_heap)) {
                HeapDestroy(AG(memory_heap));
                return;
        }
 #endif
-#if ZEND_DEBUG || !defined(ZEND_MM)
+#if ZEND_ENABLE_FAST_CACHE
        for (fci=0; fci<MAX_FAST_CACHE_TYPES; fci++) {
                fast_cache_list_entry = AG(fast_cache_list_head)[fci];
                while (fast_cache_list_entry) {
@@ -463,7 +463,8 @@ ZEND_API void shutdown_memory_manager(int silent, int clean_cache TSRMLS_DC)
                }
                AG(fast_cache_list_head)[fci] = NULL;
        }
-
+#endif
+#if !ZEND_DISABLE_MEMORY_CACHE
        if (1 || clean_cache) {
                zend_mem_header *ptr;
 
@@ -479,7 +480,8 @@ ZEND_API void shutdown_memory_manager(int silent, int clean_cache TSRMLS_DC)
                        AG(cache_count)[i] = 0;
                }
        }
-
+#endif
+#if ZEND_DEBUG || !defined(ZEND_MM)
        p = AG(head);
        t = AG(head);
        while (t) {
@@ -565,12 +567,6 @@ ZEND_API void shutdown_memory_manager(int silent, int clean_cache TSRMLS_DC)
                                        
        } while (0);
 
-#if defined(ZEND_WIN32) && ZEND_DEBUG
-       if (clean_cache && AG(memory_heap)) {
-               HeapDestroy(AG(memory_heap));
-       }
-#endif
-
 #endif
 #endif
 }