mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
[Win32] mapped_file_region: Fix a bug in CreateFileMapping() that Size must contain Offset when Offset >= 65536.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189021 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
37693da119
commit
3f256c2e0b
@ -726,8 +726,8 @@ error_code mapped_file_region::init(int FD, bool CloseFD, uint64_t Offset) {
|
|||||||
FileMappingHandle = ::CreateFileMapping(FileHandle,
|
FileMappingHandle = ::CreateFileMapping(FileHandle,
|
||||||
0,
|
0,
|
||||||
flprotect,
|
flprotect,
|
||||||
Size >> 32,
|
(Offset + Size) >> 32,
|
||||||
Size & 0xffffffff,
|
(Offset + Size) & 0xffffffff,
|
||||||
0);
|
0);
|
||||||
if (FileMappingHandle == NULL) {
|
if (FileMappingHandle == NULL) {
|
||||||
error_code ec = windows_error(GetLastError());
|
error_code ec = windows_error(GetLastError());
|
||||||
|
@ -138,9 +138,6 @@ void MemoryBufferTest::testGetOpenFileSlice(bool Reopen) {
|
|||||||
EXPECT_EQ(BufData[9], '9');
|
EXPECT_EQ(BufData[9], '9');
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(_WIN32)
|
|
||||||
// FIXME: Investigating since r188998.
|
|
||||||
|
|
||||||
TEST_F(MemoryBufferTest, getOpenFileNoReopen) {
|
TEST_F(MemoryBufferTest, getOpenFileNoReopen) {
|
||||||
testGetOpenFileSlice(false);
|
testGetOpenFileSlice(false);
|
||||||
}
|
}
|
||||||
@ -149,6 +146,4 @@ TEST_F(MemoryBufferTest, getOpenFileReopened) {
|
|||||||
testGetOpenFileSlice(true);
|
testGetOpenFileSlice(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // _WIN32
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user