diff options
author | Nicholas Clark <nick@ccl4.org> | 2007-03-02 14:42:27 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2007-03-02 14:42:27 +0000 |
commit | 9e0d86f862e086b0fde6b64ca39c85508bf50910 (patch) | |
tree | bdbcc13f4e388616629b43018a0c457c375f8cf5 /universal.c | |
parent | 06be3b4087230d77129ccda5ba56e0397c241c48 (diff) | |
download | perl-9e0d86f862e086b0fde6b64ca39c85508bf50910.tar.gz |
More assertion failures, found by auditing the code.
p4raw-id: //depot/perl@30443
Diffstat (limited to 'universal.c')
-rw-r--r-- | universal.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/universal.c b/universal.c index d07ff2fd11..f06596517a 100644 --- a/universal.c +++ b/universal.c @@ -62,7 +62,7 @@ S_isa_lookup(pTHX_ HV *stash, const char *name, const HV* const name_stash, gvp = (GV**)hv_fetchs(stash, "::ISA::CACHE::", FALSE); - if (gvp && (gv = *gvp) != (GV*)&PL_sv_undef && (subgen = GvSV(gv)) + if (gvp && (gv = *gvp) && isGV_with_GP(gv) && (subgen = GvSV(gv)) && (hv = GvHV(gv))) { if (SvIV(subgen) == (IV)PL_sub_generation) { @@ -87,7 +87,7 @@ S_isa_lookup(pTHX_ HV *stash, const char *name, const HV* const name_stash, gvp = (GV**)hv_fetchs(stash, "ISA", FALSE); - if (gvp && (gv = *gvp) != (GV*)&PL_sv_undef && (av = GvAV(gv))) { + if (gvp && (gv = *gvp) && isGV_with_GP(gv) && (av = GvAV(gv))) { if (!hv || !subgen) { gvp = (GV**)hv_fetchs(stash, "::ISA::CACHE::", TRUE); |