diff options
author | Nicholas Clark <nick@ccl4.org> | 2007-12-26 18:12:32 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2007-12-26 18:12:32 +0000 |
commit | 43230e26bd52e1dcdb541bb4a927c941262b74ed (patch) | |
tree | 208c0810033bd66cd36c0a5902f52f146d6c02b1 /pp_hot.c | |
parent | dd48e7ab8eb6069673c480ccd5a1f28dca88269b (diff) | |
download | perl-43230e26bd52e1dcdb541bb4a927c941262b74ed.tar.gz |
Take code that occurs in three places to take a scalar and ready it to
hold a reference, and convert it to a macro define prepare_SV_for_RV().
p4raw-id: //depot/perl@32737
Diffstat (limited to 'pp_hot.c')
-rw-r--r-- | pp_hot.c | 8 |
1 files changed, 1 insertions, 7 deletions
@@ -2940,13 +2940,7 @@ Perl_vivify_ref(pTHX_ SV *sv, U32 to_what) if (!SvOK(sv)) { if (SvREADONLY(sv)) Perl_croak(aTHX_ PL_no_modify); - if (SvTYPE(sv) < SVt_PV && SvTYPE(sv) != SVt_IV) - sv_upgrade(sv, SVt_IV); - else if (SvTYPE(sv) >= SVt_PV) { - SvPV_free(sv); - SvLEN_set(sv, 0); - SvCUR_set(sv, 0); - } + prepare_SV_for_RV(sv); switch (to_what) { case OPpDEREF_SV: SvRV_set(sv, newSV(0)); |