diff options
Diffstat (limited to 'llvm/lib/Support/Windows/Path.inc')
-rw-r--r-- | llvm/lib/Support/Windows/Path.inc | 25 |
1 files changed, 3 insertions, 22 deletions
diff --git a/llvm/lib/Support/Windows/Path.inc b/llvm/lib/Support/Windows/Path.inc index c74033dcb6b..a9df6c0c701 100644 --- a/llvm/lib/Support/Windows/Path.inc +++ b/llvm/lib/Support/Windows/Path.inc @@ -460,14 +460,9 @@ std::error_code setLastModificationAndAccessTime(int FD, TimeValue Time) { std::error_code mapped_file_region::init(int FD, uint64_t Offset, mapmode Mode) { - FileDescriptor = FD; // Make sure that the requested size fits within SIZE_T. - if (Size > std::numeric_limits<SIZE_T>::max()) { - if (FileDescriptor) { - } else - ::CloseHandle(FileHandle); + if (Size > std::numeric_limits<SIZE_T>::max()) return make_error_code(errc::invalid_argument); - } DWORD flprotect; switch (Mode) { @@ -483,9 +478,6 @@ std::error_code mapped_file_region::init(int FD, uint64_t Offset, 0); if (FileMappingHandle == NULL) { std::error_code ec = windows_error(GetLastError()); - if (FileDescriptor) { - } else - ::CloseHandle(FileHandle); return ec; } @@ -503,9 +495,6 @@ std::error_code mapped_file_region::init(int FD, uint64_t Offset, if (Mapping == NULL) { std::error_code ec = windows_error(GetLastError()); ::CloseHandle(FileMappingHandle); - if (FileDescriptor) { - } else - ::CloseHandle(FileHandle); return ec; } @@ -516,9 +505,6 @@ std::error_code mapped_file_region::init(int FD, uint64_t Offset, std::error_code ec = windows_error(GetLastError()); ::UnmapViewOfFile(Mapping); ::CloseHandle(FileMappingHandle); - if (FileDescriptor) { - } else - ::CloseHandle(FileHandle); return ec; } Size = mbi.RegionSize; @@ -527,28 +513,23 @@ std::error_code mapped_file_region::init(int FD, uint64_t Offset, // Close all the handles except for the view. It will keep the other handles // alive. ::CloseHandle(FileMappingHandle); - if (FileDescriptor) { - } else - ::CloseHandle(FileHandle); return std::error_code(); } mapped_file_region::mapped_file_region(int fd, mapmode mode, uint64_t length, uint64_t offset, std::error_code &ec) - : Size(length), Mapping(), FileDescriptor(fd), + : Size(length), Mapping(), FileHandle(INVALID_HANDLE_VALUE), FileMappingHandle() { FileHandle = reinterpret_cast<HANDLE>(_get_osfhandle(fd)); if (FileHandle == INVALID_HANDLE_VALUE) { - FileDescriptor = 0; ec = make_error_code(errc::bad_file_descriptor); return; } - ec = init(FileDescriptor, offset, mode); + ec = init(fd, offset, mode); if (ec) { Mapping = FileMappingHandle = 0; FileHandle = INVALID_HANDLE_VALUE; - FileDescriptor = 0; } } |