From: Jesse Luehrs Date: Mon, 5 Sep 2011 23:50:34 +0000 (-0500) Subject: don't allow invalid package names X-Git-Tag: 0.32~5 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=ed131e4112640c781865aad216cb3c424e5d2ab9;p=gitmo%2FPackage-Stash.git don't allow invalid package names --- diff --git a/Changes b/Changes index c45f4a6..2e96f70 100644 --- a/Changes +++ b/Changes @@ -3,6 +3,7 @@ Revision history for Package-Stash {{$NEXT}} - bring the behavior of has_symbol for nonexistant scalars into line with the xs version + - invalid package names (for instance, Foo:Bar) are not allowed 0.31 2011-08-08 - fix ->add_symbol('$foo', qr/sdlfk/) on 5.12+ diff --git a/lib/Package/Stash/PP.pm b/lib/Package/Stash/PP.pm index 227970a..b3e3a7d 100644 --- a/lib/Package/Stash/PP.pm +++ b/lib/Package/Stash/PP.pm @@ -40,6 +40,9 @@ sub new { . "currently support anonymous stashes. You should install " . "Package::Stash::XS"; } + elsif ($package !~ /[0-9A-Z_a-z]+(?:::[0-9A-Z_a-z]+)*/) { + confess "$package is not a module name"; + } return bless { 'package' => $package,