From f3bb857b2c0b2fc258bb79c48b79fa086dca68fb Mon Sep 17 00:00:00 2001 From: George Hazan Date: Thu, 29 Jun 2023 16:58:08 +0300 Subject: 32-bit TDLIB doesn't work under WOW64 subsystem --- protocols/Telegram/tdlib/td/tdutils/td/utils/port/FileFd.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'protocols/Telegram') diff --git a/protocols/Telegram/tdlib/td/tdutils/td/utils/port/FileFd.cpp b/protocols/Telegram/tdlib/td/tdutils/td/utils/port/FileFd.cpp index bc0481fb09..bd5795d629 100644 --- a/protocols/Telegram/tdlib/td/tdutils/td/utils/port/FileFd.cpp +++ b/protocols/Telegram/tdlib/td/tdutils/td/utils/port/FileFd.cpp @@ -599,7 +599,9 @@ Result FileFd::stat() const { #ifdef _WIN64 auto status = GetFileInformationByHandleEx(get_native_fd().fd(), FileBasicInfo, &basic_info, sizeof(basic_info)); #else - auto status = GetFileInformationByHandleEx(get_native_fd().fd(), FileBasicInfo, &basic_info, 0x24); + BOOL bIsWow64 = FALSE; + IsWow64Process(GetCurrentProcess(), &bIsWow64); + auto status = GetFileInformationByHandleEx(get_native_fd().fd(), FileBasicInfo, &basic_info, bIsWow64 ? 0x28 : 0x24); #endif if (!status) { return OS_ERROR("Get FileBasicInfo failed"); -- cgit v1.2.3