OK, a friend is trying to process directories and then files. They
have a preprocess routine that sorts thus, but the files are still
getting processed first. Investigation revealed that the inner loop
calls wanted() on files immediately while pushing the dirs onto a
stack for later processing (File/Find.pm v1.10, starting at line 907):
if (-d _) {
--$subcount;
$FN =~ s/\.dir\z//i if $Is_VMS;
# HACK: replace push to preserve dir traversal order
#push @Stack,[$CdLvl,$dir_name,$FN,$sub_nlink];
splice @Stack, $stack_top, 0,
[$CdLvl,$dir_name,$FN,$sub_nlink];
}
else {
$name = $dir_pref . $FN; # $File::Find::name
$_= ($no_chdir ? $name : $FN); # $_
{ $wanted_callback->() }; # protect against wild "next"
}
So, uhm, anyone know why? I see lots of "HACK:" comments indicating
some history here...
--
Mark J. Reed <[EMAIL PROTECTED]>