summaryrefslogtreecommitdiff
path: root/scope.c
diff options
context:
space:
mode:
authorMatthew Horsfall <wolfsage@gmail.com>2015-01-17 11:50:31 -0500
committerMatthew Horsfall <wolfsage@gmail.com>2015-01-20 11:55:21 -0500
commit13c59d41da4d2fed8800d99aa2823bcd0b64b38d (patch)
treed72b9ce2d3df65dea6800277f5f1cb09ba142d1f /scope.c
parentdf3c16d073dd0950fd720df37ebd8c36a602471c (diff)
downloadperl-13c59d41da4d2fed8800d99aa2823bcd0b64b38d.tar.gz
Revert "refactor gv_add_by_type"
This reverts commit 819b139db33e2022424694e381422766903d4f65. This could be repapplied for 5.23.1, with modifications or additional patches to solve the breakage discussed in RT 123580.
Diffstat (limited to 'scope.c')
-rw-r--r--scope.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/scope.c b/scope.c
index e1d26fb897..89b4e6ef52 100644
--- a/scope.c
+++ b/scope.c
@@ -216,17 +216,17 @@ Perl_save_pushptrptr(pTHX_ void *const ptr1, void *const ptr2, const int type)
SV *
Perl_save_scalar(pTHX_ GV *gv)
{
- SV * const sv = GvSVn(gv);
+ SV ** const sptr = &GvSVn(gv);
PERL_ARGS_ASSERT_SAVE_SCALAR;
- if (UNLIKELY(SvGMAGICAL(sv))) {
+ if (UNLIKELY(SvGMAGICAL(*sptr))) {
PL_localizing = 1;
- (void)mg_get(sv);
+ (void)mg_get(*sptr);
PL_localizing = 0;
}
- save_pushptrptr(SvREFCNT_inc_simple(gv), SvREFCNT_inc(sv), SAVEt_SV);
- return save_scalar_at(&GvSV(gv), SAVEf_SETMAGIC); /* XXX - FIXME - see #60360 */
+ save_pushptrptr(SvREFCNT_inc_simple(gv), SvREFCNT_inc(*sptr), SAVEt_SV);
+ return save_scalar_at(sptr, SAVEf_SETMAGIC); /* XXX - FIXME - see #60360 */
}
/* Like save_sptr(), but also SvREFCNT_dec()s the new value. Can be used to