From 4b86849356aeec6e45b5a5c9503e1f3a22e93721 Mon Sep 17 00:00:00 2001 From: WarmUpTill Date: Sat, 6 Jun 2020 18:51:26 +0200 Subject: [PATCH] Revert "do not use QThread::create" This reverts commit 98c3131017db23b04d3185599eee0229f72ac9b2. --- src/advanced-scene-switcher.cpp | 4 +--- src/headers/switcher-data-structs.hpp | 12 +----------- 2 files changed, 2 insertions(+), 14 deletions(-) diff --git a/src/advanced-scene-switcher.cpp b/src/advanced-scene-switcher.cpp index df59e982..57f8c432 100644 --- a/src/advanced-scene-switcher.cpp +++ b/src/advanced-scene-switcher.cpp @@ -1569,7 +1569,7 @@ void SwitcherData::Start() { if (!(th && th->isRunning())) { stop = false; - switcher->th = new SwitcherThread(); + switcher->th = QThread::create([]() { switcher->Thread(); }); switcher->th->start((QThread::Priority)switcher->threadPriority); } } @@ -1582,8 +1582,6 @@ void SwitcherData::Stop() transitionCv.notify_one(); cv.notify_one(); th->wait(); - delete th; - th = nullptr; } } diff --git a/src/headers/switcher-data-structs.hpp b/src/headers/switcher-data-structs.hpp index bcdca7b2..b10e43af 100644 --- a/src/headers/switcher-data-structs.hpp +++ b/src/headers/switcher-data-structs.hpp @@ -253,14 +253,11 @@ struct TimeSwitch { typedef enum { NO_SWITCH = 0, SWITCH = 1, RANDOM_SWITCH = 2 } NoMatch; -class SwitcherThread; - /******************************************************************************** * SwitcherData ********************************************************************************/ struct SwitcherData { - SwitcherThread *th; - + QThread* th = nullptr; condition_variable cv; mutex m; bool transitionActive = false; @@ -485,10 +482,3 @@ struct SwitcherData { } inline ~SwitcherData() { Stop(); } }; - -extern SwitcherData *switcher; -class SwitcherThread : public QThread { -public: - explicit SwitcherThread(){}; - void run() { switcher->Thread(); }; -};