From edbc11200233dc45f86c874e4568c1cf0cfd342d Mon Sep 17 00:00:00 2001 From: Anonymous Maarten Date: Mon, 24 Jun 2024 15:50:12 +0200 Subject: [PATCH] Thread functions must have SDLCALL call convention --- LEGO1/omni/include/mxthread.h | 2 +- LEGO1/omni/src/system/mxthread.cpp | 8 ++------ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/LEGO1/omni/include/mxthread.h b/LEGO1/omni/include/mxthread.h index 551f900e..b5f73f56 100644 --- a/LEGO1/omni/include/mxthread.h +++ b/LEGO1/omni/include/mxthread.h @@ -33,7 +33,7 @@ class MxThread { virtual ~MxThread(); private: - static unsigned ThreadProc(void* p_thread); + static int SDLCALL ThreadProc(void* p_thread); SDL_Thread* m_thread; MxBool m_running; // 0x0c diff --git a/LEGO1/omni/src/system/mxthread.cpp b/LEGO1/omni/src/system/mxthread.cpp index 19a1e076..4e8e8891 100644 --- a/LEGO1/omni/src/system/mxthread.cpp +++ b/LEGO1/omni/src/system/mxthread.cpp @@ -28,11 +28,7 @@ MxResult MxThread::Start(MxS32 p_stack, MxS32 p_flag) if (m_semaphore.Init(0, 1) == SUCCESS) { const SDL_PropertiesID props = SDL_CreateProperties(); - SDL_SetProperty( - props, - SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER, - (void*)MxThread::ThreadProc - ); + SDL_SetProperty(props, SDL_PROP_THREAD_CREATE_ENTRY_FUNCTION_POINTER, (void*)MxThread::ThreadProc); SDL_SetProperty(props, SDL_PROP_THREAD_CREATE_USERDATA_POINTER, this); SDL_SetNumberProperty(props, SDL_PROP_THREAD_CREATE_STACKSIZE_NUMBER, p_stack << 2); @@ -60,7 +56,7 @@ void MxThread::Terminate() } // FUNCTION: LEGO1 0x100bf680 -unsigned MxThread::ThreadProc(void* p_thread) +int MxThread::ThreadProc(void* p_thread) { return static_cast(p_thread)->Run(); }