Change 11099 by jhi@alpha on 2001/07/02 17:46:31
Retract #11055, didn't help much (2736 bytes vs 2725 bytes leaked).
The real fix must be more involved. The line of code all the leaky
call stacks seem to go through is op.c:2949, the PmopSTASH_set()
line of Perl_newPMOP().
Affected files ...
... //depot/perl/op.h#79 edit
Differences ...
==== //depot/perl/op.h#79 (text) ====
Index: perl/op.h
--- perl/op.h.~1~ Mon Jul 2 12:00:05 2001
+++ perl/op.h Mon Jul 2 12:00:05 2001
@@ -277,7 +277,7 @@
#ifdef USE_ITHREADS
# define PmopSTASHPV(o) ((o)->op_pmstashpv)
-# define PmopSTASHPV_set(o,pv) (Safefree((o)->op_pmstashpv),
(o)->op_pmstashpv = ((pv) ? savepv(pv) : Nullch))
+# define PmopSTASHPV_set(o,pv) ((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)
End of Patch.