1diff -ru Module-Pluggable-4.8/lib/Module/Pluggable/Object.pm Module-Pluggable-4.8-new/lib/Module/Pluggable/Object.pm
2--- Module-Pluggable-4.8/lib/Module/Pluggable/Object.pm 2013-05-28 01:30:06.000000000 +0200
3+++ Module-Pluggable-4.8-new/lib/Module/Pluggable/Object.pm 2013-06-02 23:24:52.704125205 +0200
4@@ -180,12 +180,13 @@
5 my $sp = catdir($dir, (split /::/, $searchpath));
6
7 # if it doesn't exist or it's not a dir then skip it
8- next unless ( -e $sp && -d _ ); # Use the cached stat the second time
9+ next unless ( -d $sp );
10
11 my @files = $self->find_files($sp);
12
13 # foreach one we've found
14 foreach my $file (@files) {
15+
16 # untaint the file; accept .pm only
17 next unless ($file) = ($file =~ /(.*$file_regex)$/);
18 # parse the file to get the name
19@@ -314,7 +315,7 @@
20 (my $path = $File::Find::name) =~ s#^\\./##;
21 push @files, $path;
22 }
23- }, $search_path );
24+ }, "$search_path/." );
25 }
26 #chdir $cwd;
27 return @files;