LINUX.ORG.RU

[Perl] closedir() attempted on invalid dirhandle DIR


0

0

Почему здесь может произойти ошибка:

sub deltree ($)
{
my $dir = shift;
if ( !-x $dir ) { return 1 }
opendir( DIR, $dir ) || die "can't opendir $dir: $!";
my @cont = readdir(DIR);
foreach my $file (@cont)
{

# for (my $i=0; $i<=$#cont; $i++) {
if ( $file =~ /^\.\.?$/ ) { next } #eq "." || $cont[$i] eq "..") {next}
if ( -d "$dir/$file" )
{
deltree "$dir/$file" or return 0;
} else
{
unlink "$dir/$file" or return 0;
}
}
closedir DIR;
rmdir $dir or return 0;
}

closedir() attempted on invalid dirhandle DIR at

Re: [Perl] closedir() attempted on invalid dirhandle DIR

Для начала следует попробовать объявить дескриптор как локальный: local *DIR;

ddt ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.