From 58f1cb21e5e5f3f82950cdae6f2fca793a1c2505 Mon Sep 17 00:00:00 2001 From: EndrII <EndrIIMail@gmail.com> Date: Mon, 20 Jan 2025 18:22:33 +0100 Subject: [PATCH] fix async render loop --- src/public/asyncrenderloop.cpp | 5 ++++- src/public/asyncrenderloop.h | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/public/asyncrenderloop.cpp b/src/public/asyncrenderloop.cpp index d8dd2b9..43f14e3 100644 --- a/src/public/asyncrenderloop.cpp +++ b/src/public/asyncrenderloop.cpp @@ -15,6 +15,10 @@ AsyncRenderLoop::AsyncRenderLoop(QThread *thread, QObject *ptr): Async(thread, p } +AsyncRenderLoop::~AsyncRenderLoop() { + stop(); +} + void QH::AsyncRenderLoop::run() { m_run = true; asyncLauncher([this](){ @@ -25,7 +29,6 @@ void QH::AsyncRenderLoop::run() { void QH::AsyncRenderLoop::stop() { m_run = false; - thread()->exit(); thread()->wait(); } diff --git a/src/public/asyncrenderloop.h b/src/public/asyncrenderloop.h index cf0e767..ea3f210 100644 --- a/src/public/asyncrenderloop.h +++ b/src/public/asyncrenderloop.h @@ -41,6 +41,7 @@ class HEARTSHARED_EXPORT AsyncRenderLoop: public Async Q_OBJECT public: AsyncRenderLoop(QThread* thread, QObject* ptr = nullptr); + ~AsyncRenderLoop(); /** * @brief run This method starts the render loop.