From e1f260d62d072051a830cd5f2eab7f028cfaffa4 Mon Sep 17 00:00:00 2001 From: Vincent Torri Date: Thu, 9 May 2019 14:09:08 -0400 Subject: [PATCH] Ecore_Exe: fix warning on Windows Summary: ExitProcess() has not the signature expected by CreateRemoteThread() Test Plan: compilation Reviewers: raster, zmike, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8870 --- src/lib/ecore/ecore_exe_win32.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/lib/ecore/ecore_exe_win32.c b/src/lib/ecore/ecore_exe_win32.c index 7ca179a..69e80da 100644 --- a/src/lib/ecore/ecore_exe_win32.c +++ b/src/lib/ecore/ecore_exe_win32.c @@ -260,6 +260,15 @@ _ecore_exe_thread_procedure(LPVOID data EINA_UNUSED) return 1; } +static DWORD __stdcall +_ecore_exe_exit_process(void *data) +{ + UINT *code; + code = (UINT *)data; + ExitProcess(*code); + return 1; +} + static BOOL CALLBACK _ecore_exe_enum_windows_procedure(HWND window, LPARAM data) @@ -267,6 +276,7 @@ _ecore_exe_enum_windows_procedure(HWND window, Ecore_Exe *obj = (Ecore_Exe *) data; Ecore_Exe_Data *exe = efl_data_scope_get(obj, ECORE_EXE_CLASS); DWORD thread_id; + UINT code = 0; if (!exe) return EINA_FALSE; thread_id = GetWindowThreadProcessId(window, NULL); @@ -295,7 +305,8 @@ _ecore_exe_enum_windows_procedure(HWND window, /* Exit process */ if (CreateRemoteThread(exe->process, NULL, 0, - (LPTHREAD_START_ROUTINE)ExitProcess, NULL, + (LPTHREAD_START_ROUTINE)_ecore_exe_exit_process, + &code, 0, NULL)) return EINA_FALSE; -- 2.7.4