From 56333064ac43c177b34db827c467d4cec0540257 Mon Sep 17 00:00:00 2001 From: itsamine27 Date: Tue, 16 Dec 2025 14:50:14 +0100 Subject: [PATCH] winit-win32: Fix ABI mismatch in INIT_MAIN_THREAD_ID Fixes #4435. --- winit-win32/src/event_loop.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/winit-win32/src/event_loop.rs b/winit-win32/src/event_loop.rs index e202281b4..925f01f56 100644 --- a/winit-win32/src/event_loop.rs +++ b/winit-win32/src/event_loop.rs @@ -528,9 +528,11 @@ fn main_thread_id() -> u32 { // // See: https://doc.rust-lang.org/stable/reference/abi.html#the-link_section-attribute #[unsafe(link_section = ".CRT$XCU")] - static INIT_MAIN_THREAD_ID: unsafe fn() = { - unsafe fn initer() { - unsafe { MAIN_THREAD_ID = GetCurrentThreadId() }; + static INIT_MAIN_THREAD_ID: unsafe extern "C" fn() = { + unsafe extern "C" fn initer() { + unsafe { + MAIN_THREAD_ID = GetCurrentThreadId(); + } } initer };