Attempt at plugging the leak under ithreads detected by Doug.
Jarkko Hietaniemi [Sat, 30 Jun 2001 22:18:37 +0000 (22:18 +0000)]
p4raw-id: //depot/perl@11055

op.h

diff --git a/op.h b/op.h
index 490b0fa..eaf8499 100644 (file)
--- a/op.h
+++ b/op.h
@@ -277,7 +277,7 @@ struct pmop {
 
 #ifdef USE_ITHREADS
 #  define PmopSTASHPV(o)       ((o)->op_pmstashpv)
-#  define PmopSTASHPV_set(o,pv)        ((o)->op_pmstashpv = ((pv) ? savepv(pv) : Nullch))
+#  define PmopSTASHPV_set(o,pv)        (Safefree((o)->op_pmstashpv), (o)->op_pmstashpv = ((pv) ? savepv(pv) : Nullch))
 #  define PmopSTASH(o)         (PmopSTASHPV(o) \
                                 ? gv_stashpv(PmopSTASHPV(o),GV_ADD) : Nullhv)
 #  define PmopSTASH_set(o,hv)  PmopSTASHPV_set(o, (hv) ? HvNAME(hv) : Nullch)