Fix bug in change 33379 - if we're using malloc_size() as well as being
Nicholas Clark [Wed, 2 Apr 2008 18:23:58 +0000 (18:23 +0000)]
careful to work with PERL_TRACK_MEMPOOL, we also have to be careful to
work *without* it.

p4raw-id: //depot/perl@33629

perl.h

diff --git a/perl.h b/perl.h
index b69baca..4cd9a2b 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -4081,17 +4081,25 @@ struct perl_memory_debug_header {
 #ifdef MYMALLOC
 #  define Perl_safesysmalloc_size(where)       Perl_malloced_size(where)
 #else
-#   ifdef HAS_MALLOC_SIZE
+#  ifdef HAS_MALLOC_SIZE
+#    ifdef PERL_TRACK_MEMPOOL
 #      define Perl_safesysmalloc_size(where)                   \
            (malloc_size(((char *)(where)) - sTHX) - sTHX)
-#   endif
-#   ifdef HAS_MALLOC_GOOD_SIZE
+#    else
+#      define Perl_safesysmalloc_size(where) malloc_size(where)
+#    endif
+#  endif
+#  ifdef HAS_MALLOC_GOOD_SIZE
+#    ifdef PERL_TRACK_MEMPOOL
 #      define Perl_malloc_good_size(how_much)                  \
            (malloc_good_size((how_much) + sTHX) - sTHX)
-#   else
+#    else
+#      define Perl_malloc_good_size(how_much) malloc_good_size(how_much)
+#    endif
+#  else
 /* Having this as the identity operation makes some code simpler.  */
 #      define Perl_malloc_good_size(how_much)  (how_much)
-#   endif
+#  endif
 #endif
 
 typedef int (CPERLscope(*runops_proc_t)) (pTHX);