summaryrefslogtreecommitdiff
path: root/op.c
diff options
context:
space:
mode:
authorDave Mitchell <davem@fdisolutions.com>2006-12-13 17:16:22 +0000
committerDave Mitchell <davem@fdisolutions.com>2006-12-13 17:16:22 +0000
commit295222340ad6893caa0a1c3479155f88ea290dc3 (patch)
tree54db55ab76b89e5a588995a9578cc7c2d71df227 /op.c
parentd2c837a0af0259b12bbac41550ec7dc972b876d9 (diff)
downloadperl-295222340ad6893caa0a1c3479155f88ea290dc3.tar.gz
misc MAD coredump fixes and parser leak fixes
- fix MAD coredump in tr/// - fix mad coredump in multi-line string literals - kill some MAD uninit value warnings - don't allow assignment to $n in perly.y - make op_dump handle op_latefree flags p4raw-id: //depot/perl@29548
Diffstat (limited to 'op.c')
-rw-r--r--op.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/op.c b/op.c
index cacad6ee0b..66587c068e 100644
--- a/op.c
+++ b/op.c
@@ -2826,7 +2826,9 @@ Perl_pmtrans(pTHX_ OP *o, OP *expr, OP *repl)
{
dVAR;
SV * const tstr = ((SVOP*)expr)->op_sv;
- SV * const rstr = ((SVOP*)repl)->op_sv;
+ SV * const rstr = (repl->op_type == OP_NULL)
+ ? ((SVOP*)((LISTOP*)repl)->op_first)->op_sv
+ : ((SVOP*)repl)->op_sv;
STRLEN tlen;
STRLEN rlen;
const U8 *t = (U8*)SvPV_const(tstr, tlen);