diff --git a/src/cpp11_thread.cpp b/src/cpp11_thread.cpp index 3185e574d..96eb4a2e1 100644 --- a/src/cpp11_thread.cpp +++ b/src/cpp11_thread.cpp @@ -1,7 +1,6 @@ #include #include #include -#include #include <86box/plat.h> @@ -78,25 +77,25 @@ thread_close_mutex(mutex_t *_mutex) event_t * thread_create_event() { - auto event = new event_cpp11_t; - return event; + auto ev = new event_cpp11_t; + return ev; } int thread_wait_event(event_t *handle, int timeout) { auto event = reinterpret_cast(handle); - std::unique_lock lock(event->mutex); + auto lock = std::unique_lock(event->mutex); if (timeout < 0) { - event->cond.wait(lock, [event] { return (event->state == true); }); + event->cond.wait(lock, [event] { return event->state; }); } else { auto to = std::chrono::system_clock::now() + std::chrono::milliseconds(timeout); std::cv_status status; do { status = event->cond.wait_until(lock, to); - } while ((status != std::cv_status::timeout) && (event->state == false)); + } while ((status != std::cv_status::timeout) && !event->state); if (status == std::cv_status::timeout) { return 1; @@ -109,9 +108,10 @@ void thread_set_event(event_t *handle) { auto event = reinterpret_cast(handle); - std::unique_lock lock(event->mutex); - - event->state = true; + { + auto lock = std::unique_lock(event->mutex); + event->state = true; + } event->cond.notify_all(); } @@ -119,8 +119,7 @@ void thread_reset_event(event_t *handle) { auto event = reinterpret_cast(handle); - std::unique_lock lock(event->mutex); - + auto lock = std::unique_lock(event->mutex); event->state = false; }