summaryrefslogtreecommitdiff
path: root/op.c
diff options
context:
space:
mode:
authorDavid Mitchell <davem@iabyn.com>2009-07-11 17:56:06 +0100
committerDavid Mitchell <davem@iabyn.com>2009-07-11 17:58:16 +0100
commita5446a64ab75205e7ec7185a30ff6e9f7c532dd0 (patch)
treeabdd58ad43fe8e4a4ac10f9acd36724c3afa63f8 /op.c
parentd55aad059d63cf3faa3b5bcd033bc19193d5f1b9 (diff)
downloadperl-a5446a64ab75205e7ec7185a30ff6e9f7c532dd0.tar.gz
[perl #61520] Segfault in debugger with tr// and UTF8
commit 043e41b8 (29765), which made tr// threadsafe by moving the swash into the pad, didn't mark the pad SV as read-only, so it was getting removed from anon sub prototypes
Diffstat (limited to 'op.c')
-rw-r--r--op.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/op.c b/op.c
index 54d2a64a78..d7ef32c3cd 100644
--- a/op.c
+++ b/op.c
@@ -3345,6 +3345,7 @@ S_pmtrans(pTHX_ OP *o, OP *expr, OP *repl)
SvREFCNT_dec(PAD_SVl(cPADOPo->op_padix));
PAD_SETSV(cPADOPo->op_padix, swash);
SvPADTMP_on(swash);
+ SvREADONLY_on(swash);
#else
cSVOPo->op_sv = swash;
#endif