Change 33074 by [EMAIL PROTECTED] on 2008/01/26 15:14:25
In POPLOOP, if CxITERVAR(cx) is non-NULL, then so is itersave, and
itersave is a less complex expression for the C compiler.
Affected files ...
... //depot/perl/cop.h#170 edit
Differences ...
==== //depot/perl/cop.h#170 (text) ====
Index: perl/cop.h
--- perl/cop.h#169~33070~ 2008-01-26 01:34:13.000000000 -0800
+++ perl/cop.h 2008-01-26 07:14:25.000000000 -0800
@@ -514,15 +514,12 @@
SvREFCNT_dec(cx->blk_loop.state_u.lazysv.cur); \
SvREFCNT_dec(cx->blk_loop.state_u.lazysv.end); \
} \
- if (CxITERVAR(cx)) { \
+ if (cx->blk_loop.itersave) { \
if (SvPADMY(cx->blk_loop.itersave)) { \
SV ** const s_v_p = CxITERVAR(cx); \
sv_2mortal(*s_v_p); \
*s_v_p = cx->blk_loop.itersave; \
} \
- else { \
- SvREFCNT_dec(cx->blk_loop.itersave); \
- } \
} \
if (CxTYPE(cx) == CXt_LOOP_FOR) \
SvREFCNT_dec(cx->blk_loop.state_u.ary.ary);
End of Patch.