Subject: | recurse() STILL behaves incorrecly with files named "0" or "0.0" |
This critical bug was resolved in 0.17 but only for next() - if you use
recurse() you still have the problem that files/directories name "0" or
"0.0" will END the recursion.
It's children() that needs to be patched as follows:
--- /usr/lib/perl5/vendor_perl/5.10.0/Path/Class/Dir.pm 2009-08-08
18:12:31.000000000 +0200
+++ Dir.pm 2009-08-11 10:33:00.000000000 +0200
@@ -173,7 +173,7 @@
my $dh = $self->open or Carp::croak( "Can't open directory $self: $!" );
my @out;
- while (my $entry = $dh->read) {
+ while (defined (my $entry = $dh->read)) {
# XXX What's the right cross-platform way to do this?
next if (!$opts{all} && ($entry eq '.' || $entry eq '..'));
push @out, $self->file($entry);