X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fio%2Fwindows%2Ffile.cpp;h=3cbdc4a8ddaf5c6b4c91672479ebf4b1a1383c21;hb=2c63690c6315004c1d5e48b84ac1b75d796ea7b2;hp=f6943adb3cb397cf3be67c8f76f4a9989cd9a2d2;hpb=ea8bf8f588310b0d7fd3297d74907602705bba1d;p=libs%2Fcore.git diff --git a/source/io/windows/file.cpp b/source/io/windows/file.cpp index f6943ad..3cbdc4a 100644 --- a/source/io/windows/file.cpp +++ b/source/io/windows/file.cpp @@ -38,11 +38,11 @@ void File::platform_init(const string &fn, CreateMode cm) sec_attr.lpSecurityDescriptor = 0; sec_attr.bInheritHandle = !!(mode&M_INHERIT); - *handle = CreateFile(fn.c_str(), flags, share_flags, 0, create_flags, FILE_ATTRIBUTE_NORMAL, 0); + *handle = CreateFile(fn.c_str(), flags, share_flags, 0, create_flags, FILE_ATTRIBUTE_NORMAL, &sec_attr); if(!handle) { int err = GetLastError(); - if(err==ERROR_FILE_NOT_FOUND) + if(err==ERROR_FILE_NOT_FOUND || err==ERROR_PATH_NOT_FOUND) throw file_not_found(fn); else if(err==ERROR_FILE_EXISTS) throw file_already_exists(fn);