summaryrefslogtreecommitdiff
path: root/gv.c
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2012-12-08 06:14:42 -0800
committerFather Chrysostomos <sprout@cpan.org>2012-12-09 18:47:18 -0800
commite7881358a40c0c95ec67889ca179bd8ca552060a (patch)
tree359bfbbe933f1f5e1db615e0226c3aeef277c61c /gv.c
parent5f95447316b04ae4c8e2a2f94e998de5feb87e31 (diff)
downloadperl-e7881358a40c0c95ec67889ca179bd8ca552060a.tar.gz
Use SvREFCNT_dec_NN in gv.c
Various SvREFCNT_dec calls in gv.c are never given null pointers, so there is no need to check for them. I added one const mostly for code documentation purposes (so one can see at a glance that the variable won’t change).
Diffstat (limited to 'gv.c')
-rw-r--r--gv.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/gv.c b/gv.c
index 8aa2acefce..6d36a1f0e8 100644
--- a/gv.c
+++ b/gv.c
@@ -225,7 +225,7 @@ Perl_cvgv_set(pTHX_ CV* cv, GV* gv)
if (oldgv) {
if (CvCVGV_RC(cv)) {
- SvREFCNT_dec(oldgv);
+ SvREFCNT_dec_NN(oldgv);
CvCVGV_RC_off(cv);
}
else {
@@ -697,7 +697,7 @@ Perl_gv_fetchmeth_pvn(pTHX_ HV *stash, const char *name, STRLEN len, I32 level,
}
else {
/* stale cache entry, junk it and move on */
- SvREFCNT_dec(cand_cv);
+ SvREFCNT_dec_NN(cand_cv);
GvCV_set(topgv, NULL);
cand_cv = NULL;
GvCVGEN(topgv) = 0;
@@ -1159,7 +1159,7 @@ Perl_gv_autoload_pvn(pTHX_ HV *stash, const char *name, STRLEN len, U32 flags)
*/
CvSTASH_set(cv, stash);
if (SvPOK(cv)) { /* Ouch! */
- SV *tmpsv = newSVpvn_flags(name, len, is_utf8);
+ SV * const tmpsv = newSVpvn_flags(name, len, is_utf8);
STRLEN ulen;
const char *proto = CvPROTO(cv);
assert(proto);
@@ -1173,7 +1173,7 @@ Perl_gv_autoload_pvn(pTHX_ HV *stash, const char *name, STRLEN len, U32 flags)
SvTEMP_on(tmpsv); /* Allow theft */
sv_setsv_nomg((SV *)cv, tmpsv);
SvTEMP_off(tmpsv);
- SvREFCNT_dec(tmpsv);
+ SvREFCNT_dec_NN(tmpsv);
SvLEN(cv) = SvCUR(cv) + 1;
SvCUR(cv) = ulen;
}
@@ -1264,7 +1264,7 @@ S_require_tie_mod(pTHX_ GV *gv, const char *varpv, SV* namesv, const char *methp
type, varname, SVfARG(namesv), methpv);
LEAVE;
}
- else SvREFCNT_dec(namesv);
+ else SvREFCNT_dec_NN(namesv);
return stash;
}
@@ -2016,7 +2016,7 @@ Perl_gv_fetchpvn_flags(pTHX_ const char *nambeg, STRLEN full_len, I32 flags,
GvSV(gv) && (SvOK(GvSV(gv)) || SvMAGICAL(GvSV(gv)))
))
(void)hv_store(stash,name,len,(SV *)gv,0);
- else SvREFCNT_dec(gv), gv = NULL;
+ else SvREFCNT_dec_NN(gv), gv = NULL;
}
if (gv) gv_init_svtype(gv, faking_it ? SVt_PVCV : sv_type);
return gv;
@@ -2125,7 +2125,7 @@ Perl_gp_ref(pTHX_ GP *gp)
/* If the GP they asked for a reference to contains
a method cache entry, clear it first, so that we
don't infect them with our cached entry */
- SvREFCNT_dec(gp->gp_cv);
+ SvREFCNT_dec_NN(gp->gp_cv);
gp->gp_cv = NULL;
gp->gp_cvgen = 0;
}
@@ -2227,7 +2227,7 @@ Perl_magic_freeovrld(pTHX_ SV *sv, MAGIC *mg)
for (i = 1; i < NofAMmeth; i++) {
CV * const cv = amtp->table[i];
if (cv) {
- SvREFCNT_dec(MUTABLE_SV(cv));
+ SvREFCNT_dec_NN(MUTABLE_SV(cv));
amtp->table[i] = NULL;
}
}
@@ -2948,7 +2948,7 @@ Perl_amagic_call(pTHX_ SV *left, SV *right, int method, int flags)
if (SvREFCNT(tmpRef) > 1 && (rv_copy = AMG_CALLunary(left,copy_amg))) {
SvRV_set(left, rv_copy);
SvSETMAGIC(left);
- SvREFCNT_dec(tmpRef);
+ SvREFCNT_dec_NN(tmpRef);
}
}