diff options
author | Nicholas Clark <nick@ccl4.org> | 2006-11-06 21:05:59 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2006-11-06 21:05:59 +0000 |
commit | 797c717188459bd306f22db4f33d8350f22fec7c (patch) | |
tree | bf764cf01bf00700c5b9f545187e33f79fefca8b /sv.c | |
parent | a0905512454da5aed8153dd1a097bc232ddb6ca9 (diff) | |
download | perl-797c717188459bd306f22db4f33d8350f22fec7c.tar.gz |
assert() that SvPV_set() isn't used on hashes.
p4raw-id: //depot/perl@29220
Diffstat (limited to 'sv.c')
-rw-r--r-- | sv.c | 8 |
1 files changed, 3 insertions, 5 deletions
@@ -1277,13 +1277,11 @@ Perl_sv_upgrade(pTHX_ register SV *sv, svtype new_type) assert(SvPVX_const(sv) == 0); } - /* Could put this in the else clause below, as PVMG must have SvPVX - 0 already (the assertion above) */ - SvPV_set(sv, NULL); - if (old_type >= SVt_PVMG) { SvMAGIC_set(sv, ((XPVMG*)old_body)->xmg_u.xmg_magic); SvSTASH_set(sv, ((XPVMG*)old_body)->xmg_stash); + } else { + sv->sv_u.svu_array = NULL; /* or svu_hash */ } break; @@ -10125,7 +10123,7 @@ Perl_sv_dup(pTHX_ const SV *sstr, CLONE_PARAMS* param) } } else - SvPV_set(dstr, NULL); + HvARRAY((HV*)dstr) = NULL; break; case SVt_PVCV: if (!(param->flags & CLONEf_COPY_STACKS)) { |