diff options
author | Matthew Horsfall <wolfsage@gmail.com> | 2015-01-17 11:50:31 -0500 |
---|---|---|
committer | Matthew Horsfall <wolfsage@gmail.com> | 2015-01-20 11:55:21 -0500 |
commit | 13c59d41da4d2fed8800d99aa2823bcd0b64b38d (patch) | |
tree | d72b9ce2d3df65dea6800277f5f1cb09ba142d1f /scope.c | |
parent | df3c16d073dd0950fd720df37ebd8c36a602471c (diff) | |
download | perl-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.c | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -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 |