The windows version for DirectoryExists has a bug:
Function DirectoryExists (Const Directory : String) : Boolean;
var
Handle: THandle;
FindData: TWin32FindData;
begin
Handle := FindFirstFile(Pchar(Directory), FindData);
Result:=(Handle INVALID_HANDLE_VALUE) and
((FindData.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY)
If Result then
Windows.FindClose(Handle);
end;It doesn't close the find handle if whatever it found wasn't a directory.
johannes
http://www.sipsolutions.de/
GnuPG key: http://www.sipsolutions.de/keys/JohannesBerg.asc
Key-ID: 9AB78CA5 Johannes Berg
Fingerprint = AD02 0176 4E29 C137 1DF6 08D2 FC44 CF86 9AB7 8CA5
