[win32] fix Env.pm to weed out illegal names
Gurusamy Sarathy [Sat, 28 Mar 1998 05:01:57 +0000 (05:01 +0000)]
p4raw-id: //depot/win32/perl@838

lib/Env.pm

index f2fe4af..b0afc3b 100644 (file)
@@ -45,14 +45,14 @@ Chip Salzenberg E<lt>F<chip@fin.uucp>E<gt>
 sub import {
     my ($callpack) = caller(0);
     my $pack = shift;
-    my @vars = @_ ? @_ : keys(%ENV);
+    my @vars = grep /^[A-Za-z_]\w*$/, (@_ ? @_ : keys(%ENV));
     return unless @vars;
 
     eval "package $callpack; use vars qw("
         . join(' ', map { '$'.$_ } @vars) . ")";
     die $@ if $@;
     foreach (@vars) {
-       tie ${"${callpack}::$_"}, Env, $_ if /^[A-Za-z_]\w*$/;
+       tie ${"${callpack}::$_"}, Env, $_;
     }
 }