X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Ffs%2Fstat.cpp;h=d61081b95c9190732627c2e435223eb8f61ba73a;hp=f5e914eada807aa0ee356c736fd6a63fbecb3be0;hb=e297edc38785ae5931685f6b1d6efdef97fc5c10;hpb=5dc87e4456db444a48081bbcfab9294bf35a3f55 diff --git a/source/fs/stat.cpp b/source/fs/stat.cpp index f5e914e..d61081b 100644 --- a/source/fs/stat.cpp +++ b/source/fs/stat.cpp @@ -94,7 +94,13 @@ Stat Stat::stat(const Path &path) HANDLE handle; handle = CreateFile(path.str().c_str(), 0, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, 0); if(handle==INVALID_HANDLE_VALUE) - throw system_error("CreateFile"); + { + DWORD err = GetLastError(); + if(err==ERROR_FILE_NOT_FOUND) + return Stat(); + else + throw system_error("CreateFile", err); + } BY_HANDLE_FILE_INFORMATION info; if(!GetFileInformationByHandle(handle, &info))