Work on CI support for MingW

This commit is contained in:
Steffen Schuemann 2019-05-14 07:34:47 +02:00
parent 4ea79dfa95
commit 68b2083e0d

View File

@ -1555,7 +1555,7 @@ GHC_INLINE path resolveSymlink(const path& p, std::error_code& ec)
UCHAR DataBuffer[1]; UCHAR DataBuffer[1];
} GenericReparseBuffer; } GenericReparseBuffer;
} DUMMYUNIONNAME; } DUMMYUNIONNAME;
} REPARSE_DATA_BUFFER, *PREPARSE_DATA_BUFFER; } REPARSE_DATA_BUFFER;
#ifndef MAXIMUM_REPARSE_DATA_BUFFER_SIZE #ifndef MAXIMUM_REPARSE_DATA_BUFFER_SIZE
#define MAXIMUM_REPARSE_DATA_BUFFER_SIZE (16 * 1024) #define MAXIMUM_REPARSE_DATA_BUFFER_SIZE (16 * 1024)
#endif #endif
@ -1568,7 +1568,7 @@ GHC_INLINE path resolveSymlink(const path& p, std::error_code& ec)
} }
char buffer[MAXIMUM_REPARSE_DATA_BUFFER_SIZE] = {0}; char buffer[MAXIMUM_REPARSE_DATA_BUFFER_SIZE] = {0};
REPARSE_DATA_BUFFER& reparseData = *(REPARSE_DATA_BUFFER*)buffer; REPARSE_DATA_BUFFER& reparseData = *reinterpret_cast<const REPARSE_DATA_BUFFER*>(buffer);
ULONG bufferUsed; ULONG bufferUsed;
path result; path result;
if (DeviceIoControl(file.get(), FSCTL_GET_REPARSE_POINT, 0, 0, &reparseData, sizeof(buffer), &bufferUsed, 0)) { if (DeviceIoControl(file.get(), FSCTL_GET_REPARSE_POINT, 0, 0, &reparseData, sizeof(buffer), &bufferUsed, 0)) {