| 285 | return ResultFile(FileError::InvalidHandle, FileErrorDetail::ChangeDescriptorPermissions); |
| 286 | |
| 287 | FILE_BASIC_INFO basicInfo = {}; |
| 288 | if (::GetFileInformationByHandleEx(handle, FileBasicInfo, &basicInfo, sizeof(basicInfo)) == FALSE) |
| 289 | return ResultFile::withNativeError(FileError::MetadataQueryFailed, FileErrorDetail::ChangeDescriptorPermissions, |
| 290 | ::GetLastError()); |
| 291 | |
| 292 | if (mode & 0200u) |
| 293 | { |
| 294 | basicInfo.FileAttributes &= ~FILE_ATTRIBUTE_READONLY; |
| 295 | } |