add and use beginthread/createthread macro for windowses

This commit is contained in:
Viktor Szakats 2025-08-01 22:10:15 +02:00
parent 4d825c74d4
commit 57ff443a4c
No known key found for this signature in database
GPG key ID: B5ABD165E2AEF201
5 changed files with 9 additions and 13 deletions

View file

@ -58,11 +58,7 @@ static CURLcode test_lib3026(const char *URL)
for(i = 0; i < tid_count; i++) {
curl_win_thread_handle_t th;
results[i] = CURL_LAST; /* initialize with invalid value */
#if defined(CURL_WINDOWS_UWP) || defined(UNDER_CE)
th = CreateThread(NULL, 0, t3026_run_thread, &results[i], 0, NULL);
#else
th = _beginthreadex(NULL, 0, t3026_run_thread, &results[i], 0, NULL);
#endif
th = CURL_WIN_BEGINTHREAD(NULL, 0, t3026_run_thread, &results[i], 0, NULL);
if(!th) {
curl_mfprintf(stderr, "%s:%d Couldn't create thread, errno %lu\n",
__FILE__, __LINE__, GetLastError());

View file

@ -568,7 +568,8 @@ static HANDLE select_ws_wait(HANDLE handle, HANDLE signal, HANDLE abort)
data->abort = abort;
/* launch waiting thread */
thread = _beginthreadex(NULL, 0, &select_ws_wait_thread, data, 0, NULL);
thread = CURL_WIN_BEGINTHREAD(NULL, 0, &select_ws_wait_thread, data, 0,
NULL);
/* free data if thread failed to launch */
if(!thread) {

View file

@ -625,8 +625,9 @@ void install_signal_handlers(bool keep_sigalrm)
#if !defined(CURL_WINDOWS_UWP) && !defined(UNDER_CE)
{
curl_win_thread_handle_t thread;
thread = _beginthreadex(NULL, 0, &main_window_loop,
(void *)GetModuleHandle(NULL), 0, &thread_main_id);
thread = CURL_WIN_BEGINTHREAD(NULL, 0, &main_window_loop,
(void *)GetModuleHandle(NULL), 0,
&thread_main_id);
thread_main_window = (HANDLE)thread;
if(!thread_main_window || !thread_main_id)
logmsg("cannot start main window loop");