summaryrefslogtreecommitdiff
path: root/regexec.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 /regexec.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 'regexec.c')
-rw-r--r--regexec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/regexec.c b/regexec.c
index 26c7a1af52..9588cdfd12 100644
--- a/regexec.c
+++ b/regexec.c
@@ -2259,7 +2259,7 @@ S_regtry(pTHX_ regmatch_info *reginfo, char **startpos)
/* so we know which PL_regex_padav element is PL_reg_curpm
when clearing up in perl_destruct() */
SvFLAGS(repointer) |= SVf_BREAK;
- av_push(PL_regex_padav,repointer);
+ av_push(PL_regex_padav,SvREFCNT_inc_simple_NN(repointer));
PL_reg_curpm->op_pmoffset = av_len(PL_regex_padav);
PL_regex_pad = AvARRAY(PL_regex_padav);
}