February 20, 2006
Runnig the following:

# bool callback(DirEntry* de)
# {
#   writefln(de.name, " ", de.size);
#   return true;
# }
#
# listdir(".", &callback);

will output bogus sizes for all the files except the first. It would also do the same for access times, etc. The bug lies in the 'lazy' evaluation of stat() found in the linux version of the DirEntry struct. To fix it, add the line

didstat = 0;

to DirEntry.init(), found at line 1126 of std/file.d.

Nick


February 20, 2006
You're right, I'll fold in the fix.