From 1889f2badd72ab6755b84fc68e9088191ae97516 Mon Sep 17 00:00:00 2001 From: Vladimir Olteanu Date: Tue, 20 Jul 2021 11:18:03 +0300 Subject: [PATCH] Get rid of utils/thread.{h,cpp} --- CMakeLists.txt | 1 - Source/utils/thread.cpp | 84 ----------------------------------------- Source/utils/thread.h | 23 ----------- 3 files changed, 108 deletions(-) delete mode 100644 Source/utils/thread.cpp delete mode 100644 Source/utils/thread.h diff --git a/CMakeLists.txt b/CMakeLists.txt index ab7154f83..fee90a2e9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -417,7 +417,6 @@ set(libdevilutionx_SRCS Source/utils/file_util.cpp Source/utils/language.cpp Source/utils/paths.cpp - Source/utils/thread.cpp Source/utils/sdl_thread.cpp Source/DiabloUI/art.cpp Source/DiabloUI/art_draw.cpp diff --git a/Source/utils/thread.cpp b/Source/utils/thread.cpp deleted file mode 100644 index 311e08317..000000000 --- a/Source/utils/thread.cpp +++ /dev/null @@ -1,84 +0,0 @@ -#include "utils/thread.h" - -#include -#include - -#include "appfat.h" -#include "utils/log.hpp" -#include "utils/stubs.h" - -namespace devilution { - -static int SDLCALL ThreadTranslate(void *ptr) -{ - auto handler = (void (*)())ptr; - - handler(); - - return 0; -} - -SDL_Thread *CreateThread(void (*handler)(), SDL_threadID *threadId) -{ -#ifdef USE_SDL1 - SDL_Thread *ret = SDL_CreateThread(ThreadTranslate, (void *)handler); -#else - SDL_Thread *ret = SDL_CreateThread(ThreadTranslate, nullptr, (void *)handler); -#endif - if (ret == nullptr) { - ErrSdl(); - } - *threadId = SDL_GetThreadID(ret); - return ret; -} - -event_emul *StartEvent() -{ - event_emul *ret; - ret = new event_emul(); - ret->mutex = SDL_CreateMutex(); - if (ret->mutex == nullptr) { - ErrSdl(); - } - ret->cond = SDL_CreateCond(); - if (ret->cond == nullptr) { - ErrSdl(); - } - return ret; -} - -void EndEvent(event_emul *event) -{ - SDL_DestroyCond(event->cond); - SDL_DestroyMutex(event->mutex); - delete event; -} - -void SetEvent(event_emul *e) -{ - if (SDL_LockMutex(e->mutex) <= -1 || SDL_CondSignal(e->cond) <= -1 || SDL_UnlockMutex(e->mutex) <= -1) { - ErrSdl(); - } -} - -void ResetEvent(event_emul *e) -{ - if (SDL_LockMutex(e->mutex) <= -1 || SDL_CondWaitTimeout(e->cond, e->mutex, 0) <= -1 || SDL_UnlockMutex(e->mutex) <= -1) { - ErrSdl(); - } -} - -int WaitForEvent(event_emul *e) -{ - if (SDL_LockMutex(e->mutex) <= -1) { - ErrSdl(); - } - int ret = SDL_CondWait(e->cond, e->mutex); - if (ret <= -1 || SDL_CondSignal(e->cond) <= -1 || SDL_UnlockMutex(e->mutex) <= -1) { - Log("{}", SDL_GetError()); - return -1; - } - return ret; -} - -} // namespace devilution diff --git a/Source/utils/thread.h b/Source/utils/thread.h deleted file mode 100644 index d418fd6c6..000000000 --- a/Source/utils/thread.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -#include - -#ifdef USE_SDL1 -#include "utils/sdl2_to_1_2_backports.h" -#endif - -namespace devilution { - -typedef struct event_emul { - SDL_mutex *mutex; - SDL_cond *cond; -} event_emul; - -event_emul *StartEvent(); -void EndEvent(event_emul *event); -void SetEvent(event_emul *e); -void ResetEvent(event_emul *e); -int WaitForEvent(event_emul *e); -SDL_Thread *CreateThread(void (*handler)(), SDL_threadID *ThreadID); - -} // namespace devilution