From d4f755a790d60fee0757d406d397153d99f1649e Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Thu, 3 Jan 2013 19:55:53 -0600 Subject: handle things like PL_sv_undef here it's B::SPECIAL, not B::SV (sigh) --- lib/Package/Stash/PP.pm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'lib/Package/Stash/PP.pm') diff --git a/lib/Package/Stash/PP.pm b/lib/Package/Stash/PP.pm index 2508052..71ee4e5 100644 --- a/lib/Package/Stash/PP.pm +++ b/lib/Package/Stash/PP.pm @@ -250,7 +250,10 @@ sub has_symbol { return defined ${ *{$entry_ref}{$type} }; } else { - return B::svref_2object($entry_ref)->SV->isa('B::SV'); + my $sv = B::svref_2object($entry_ref)->SV; + return $sv->isa('B::SV') + || ($sv->isa('B::SPECIAL') + && $B::specialsv_name[$$sv] ne 'Nullsv'); } } else { -- cgit v1.2.3-54-g00ecf