From 7d5b8fcf7724a66f191cae45d858a1b3d63c2bce Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Tue, 9 Aug 2011 14:19:44 +0100 Subject: [PATCH] Change start_routine argument Directly pass the thread pointer. No functional change. Signed-off-by: Marco Costalba --- src/thread.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/thread.cpp b/src/thread.cpp index 1f01537f..6044d0aa 100644 --- a/src/thread.cpp +++ b/src/thread.cpp @@ -33,17 +33,17 @@ namespace { extern "C" { #if defined(_MSC_VER) - DWORD WINAPI start_routine(LPVOID threadID) { + DWORD WINAPI start_routine(LPVOID thread) { - Threads[*(int*)threadID].idle_loop(NULL); + ((Thread*)thread)->idle_loop(NULL); return 0; } #else - void* start_routine(void* threadID) { + void* start_routine(void* thread) { - Threads[*(int*)threadID].idle_loop(NULL); + ((Thread*)thread)->idle_loop(NULL); return NULL; } @@ -173,15 +173,15 @@ void ThreadsManager::init() { threads[i].threadID = i; #if defined(_MSC_VER) - threads[i].handle = CreateThread(NULL, 0, start_routine, (LPVOID)&threads[i].threadID, 0, NULL); + threads[i].handle = CreateThread(NULL, 0, start_routine, (LPVOID)&threads[i], 0, NULL); bool ok = (threads[i].handle != NULL); #else - bool ok = (pthread_create(&threads[i].handle, NULL, start_routine, (void*)&threads[i].threadID) == 0); + bool ok = (pthread_create(&threads[i].handle, NULL, start_routine, (void*)&threads[i]) == 0); #endif if (!ok) { - std::cout << "Failed to create thread number " << i << std::endl; + std::cerr << "Failed to create thread number " << i << std::endl; ::exit(EXIT_FAILURE); } } -- 2.39.2