From: George Tasker Date: Mon, 20 Nov 2000 15:14:22 +0000 (+0000) Subject: Fixed the wxDirExists() function so that if asked about the root directory of a drive... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/7d33179be4d36ceb6cccb3fe3718e7d2cddcc200?ds=inline Fixed the wxDirExists() function so that if asked about the root directory of a drive (i.e. "d:\") or a UNC directory, WIN32 apps will correctly report whether the dir exists git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@8759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/msw/utils.cpp b/src/msw/utils.cpp index e191b5aacd..634668dd77 100644 --- a/src/msw/utils.cpp +++ b/src/msw/utils.cpp @@ -436,29 +436,14 @@ wxChar *wxGetUserHome(const wxString& user) bool wxDirExists(const wxString& dir) { #if defined(__WIN32__) - WIN32_FIND_DATA fileInfo; + DWORD attribs = GetFileAttributes(dir); + return ((attribs != -1) && (attribs & FILE_ATTRIBUTE_DIRECTORY)); #else // Win16 #ifdef __BORLANDC__ struct ffblk fileInfo; #else struct find_t fileInfo; #endif -#endif // Win32/16 - -#if defined(__WIN32__) - HANDLE h = ::FindFirstFile(dir, &fileInfo); - - if ( h == INVALID_HANDLE_VALUE ) - { - wxLogLastError(wxT("FindFirstFile")); - - return FALSE; - } - - ::FindClose(h); - - return (fileInfo.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0; -#else // Win16 // In Borland findfirst has a different argument // ordering from _dos_findfirst. But _dos_findfirst // _should_ be ok in both MS and Borland... why not?