summaryrefslogtreecommitdiff
path: root/scope.c
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2004-03-31 15:16:49 +0000
committerNicholas Clark <nick@ccl4.org>2004-03-31 15:16:49 +0000
commit1f26b25173362148a1440f0d5e8c2089eeea4f3b (patch)
tree613445cc0f873280c6de7b324e2f6cf93879a91a /scope.c
parent2c2a9fc1372a4337d75b8bdc585daead1d10bcf7 (diff)
downloadperl-1f26b25173362148a1440f0d5e8c2089eeea4f3b.tar.gz
Integrate:
[ 22582] mintest will pass if I skip the correct number of tests. D'oh! [ 22591] [perl #27268] Blessed reference to anonymous glob Stop *$$x=$x giving "Attempt to free unreferenced scalar" warning [ 22594] [perl #27040] - hints hash was being double freed on scope exit [ 22596] fix for change #22594; if using test.pl, must tell perl where to find it! [ 22599] [perl #24200] string corruption with lvalue sub Depending on the context, the same substr OP may want to return a PVLV or an LV on subsequent invcations. If TARG is the wrong type, use a mortal instead. [ 22605] pv_display() had code to display \n etc as escapes but it didn't actually work. [ 22607] update -Dx to cope with lexical version of OP_AELEMFAST p4raw-link: @22607 on //depot/perl: 38c076c778be4d77b58837d5c13b55bd2f5fb50e p4raw-link: @22605 on //depot/perl: 46316b0a1e18bbab306c955d1ad4c7942f675812 p4raw-link: @22599 on //depot/perl: 781e754729fc501417aaa89f25dc83f904a17c5c p4raw-link: @22596 on //depot/perl: 0f94e4a979939cb2b1eeb2199cf16a3fe85e8ddb p4raw-link: @22594 on //depot/perl: dfa41748806263fb8b5d5fcb051bd36be96fe93c p4raw-link: @22591 on //depot/perl: ec5f3c78a7539e41900be465ef86bff34f621939 p4raw-link: @22582 on //depot/perl: 13b238e638f82ea9dd82406b41b94ea2b72b1275 p4raw-id: //depot/maint-5.8/perl@22622 p4raw-edited: from //depot/perl@22620 'edit in' t/op/substr.t (@22419..) p4raw-integrated: from //depot/perl@22620 'copy in' t/op/ref.t (@19849..) t/op/magic.t (@22564..) t/comp/hints.t (@22594..) 'edit in' dump.c (@22605..) 'merge in' scope.h (@22509..) op.c (@22520..) sv.c (@22546..) pp.c (@22549..) scope.c (@22578..)
Diffstat (limited to 'scope.c')
-rw-r--r--scope.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/scope.c b/scope.c
index 8bcb1b2716..c1cbcc3466 100644
--- a/scope.c
+++ b/scope.c
@@ -1017,6 +1017,11 @@ Perl_leave_scope(pTHX_ I32 base)
GvHV(PL_hintgv) = NULL;
}
*(I32*)&PL_hints = (I32)SSPOPINT;
+ if (PL_hints & HINT_LOCALIZE_HH) {
+ SvREFCNT_dec((SV*)GvHV(PL_hintgv));
+ GvHV(PL_hintgv) = (HV*)SSPOPPTR;
+ }
+
break;
case SAVEt_COMPPAD:
PL_comppad = (PAD*)SSPOPPTR;