Fix Windows XP support in LocalFileLoader

Because that junk from 50 years ago still matters to people, apparently.
This commit is contained in:
Simonas Kazlauskas 2017-07-01 13:10:25 +03:00
parent 3f8ccf4866
commit ee00815da3

View file

@ -58,11 +58,13 @@ LocalFileLoader::LocalFileLoader(const std::string &filename)
if (handle_ == INVALID_HANDLE_VALUE) {
return;
}
FILE_STANDARD_INFO info;
if (GetFileInformationByHandleEx(handle_, FileStandardInfo, &info, sizeof(info)) == 0) {
LARGE_INTEGER end_offset;
const LARGE_INTEGER zero = { 0 };
if(SetFilePointerEx(handle_, zero, &end_offset, FILE_END) == 0) {
return;
}
filesize_ = info.EndOfFile.QuadPart;
filesize_ = end_offset.QuadPart;
SetFilePointerEx(handle_, zero, nullptr, FILE_BEGIN);
#endif // !_WIN32