Readdir() bug?
John William
jw2357@hotmail.com
Sun Feb 24 18:03:00 GMT 2002
I have a program that behaves differently on Linux and Cygwin. I'm using
version 1.3.9 of the DLL.
The program tries to list all files in a directory by doing opendir(), then
readdir() until all the entries have been read and then closedir(). That
works fine, but the time between the opendir() and the closedir() can be
considerable.
On Linux, if any files are added to the directory after the opendir(), they
will not be enumerated by readdir(). On Cygwin, they are (they can appear in
the middle of the file list or at the end - presumably wherever the new file
happened to end up in the directory's file order).
I am assuming that the Linux behavour is correct. Cygwin causes the program
in question to break because it can modify files and copy them back into the
original directory (with a copy followed by a rename to replace the original
file) so readdir() never hits the end of the file list because it keeps
seeing the newly added files.
Any help or comments would be appreciated. Thanks.
- John
_________________________________________________________________
Join the worldÂs largest e-mail service with MSN Hotmail.
http://www.hotmail.com
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
More information about the Cygwin
mailing list