diff --git a/src/compat/section.c b/src/compat/section.c index d0785c9..9323a42 100644 --- a/src/compat/section.c +++ b/src/compat/section.c @@ -22,13 +22,14 @@ * THE SOFTWARE. */ #include +#include #include "section.h" #include "internal.h" #ifdef _WIN32 void *get_win_section_start(const char *section) { PIMAGE_DOS_HEADER dosHeader = (PIMAGE_DOS_HEADER) GetModuleHandle(NULL); - PIMAGE_NT_HEADERS ntHeader = ntHeader = (PIMAGE_NT_HEADERS) ((DWORD)(dosHeader) + (dosHeader->e_lfanew)); + PIMAGE_NT_HEADERS ntHeader = ntHeader = (PIMAGE_NT_HEADERS) ((uintptr_t)(dosHeader) + (dosHeader->e_lfanew)); assert(dosHeader->e_magic == IMAGE_DOS_SIGNATURE); assert(ntHeader->Signature == IMAGE_NT_SIGNATURE); @@ -44,7 +45,7 @@ void *get_win_section_start(const char *section) { void *get_win_section_end(const char *section) { PIMAGE_DOS_HEADER dosHeader = (PIMAGE_DOS_HEADER) GetModuleHandle(NULL); - PIMAGE_NT_HEADERS ntHeader = ntHeader = (PIMAGE_NT_HEADERS) ((DWORD)(dosHeader) + (dosHeader->e_lfanew)); + PIMAGE_NT_HEADERS ntHeader = ntHeader = (PIMAGE_NT_HEADERS) ((uintptr_t)(dosHeader) + (dosHeader->e_lfanew)); assert(dosHeader->e_magic == IMAGE_DOS_SIGNATURE); assert(ntHeader->Signature == IMAGE_NT_SIGNATURE);