summaryrefslogtreecommitdiff
path: root/sv.c
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2008-01-08 16:42:31 +0000
committerNicholas Clark <nick@ccl4.org>2008-01-08 16:42:31 +0000
commit9a8b670905dec428f75660a49918537c7271b6b6 (patch)
tree8d1a108b83c4f28673e87e85857cc9562b2958c8 /sv.c
parent7d8473223db014c201b17b33ac514b9e89ac7f71 (diff)
downloadperl-9a8b670905dec428f75660a49918537c7271b6b6.tar.gz
Correct a long-standing ithreads reference counting anonamly - the
reference count only needs "doubling" when the scalar is pushed onto PL_regex_padav for the second time. p4raw-id: //depot/perl@32899
Diffstat (limited to 'sv.c')
-rw-r--r--sv.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sv.c b/sv.c
index db635955b4..f8e18a9e05 100644
--- a/sv.c
+++ b/sv.c
@@ -11273,8 +11273,7 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
SV * const sv =
SvREPADTMP(regex)
? sv_dup_inc((SV*) regex, param)
- : SvREFCNT_inc(
- newSViv(PTR2IV(sv_dup_inc(INT2PTR(SV *, SvIVX(regex)), param))))
+ : newSViv(PTR2IV(sv_dup_inc(INT2PTR(SV *, SvIVX(regex)), param)))
;
if (SvFLAGS(regex) & SVf_BREAK)
SvFLAGS(sv) |= SVf_BREAK; /* unrefcnted PL_curpm */