PERL_IMPLICIT_SYS also needs thread context for safesysfree()
Nicholas Clark [Thu, 17 Jun 2010 09:46:37 +0000 (10:46 +0100)]
PERL_TRACK_MEMPOOL needs it to work without -DDEBUGGING.

Fixes for 0cb20dae370512c6 not addressed by 1f4d2d4e2e4bb7bb.

util.c

diff --git a/util.c b/util.c
index 237d121..666f99f 100644 (file)
--- a/util.c
+++ b/util.c
@@ -70,7 +70,7 @@ S_write_no_mem(pTHX)
     NORETURN_FUNCTION_END;
 }
 
-#if defined (DEBUGGING) || defined(PERL_IMPLICIT_SYS)
+#if defined (DEBUGGING) || defined(PERL_IMPLICIT_SYS) || defined (PERL_TRACK_MEMPOOL)
 #  define ALWAYS_NEED_THX
 #endif
 
@@ -244,7 +244,7 @@ Perl_safesysrealloc(Malloc_t where,MEM_SIZE size)
 Free_t
 Perl_safesysfree(Malloc_t where)
 {
-#if defined(DEBUGGING) && (defined(PERL_IMPLICIT_SYS) || defined(PERL_TRACK_MEMPOOL))
+#ifdef ALWAYS_NEED_THX
     dTHX;
 #else
     dVAR;