From 1c0e0a5e38102a67cb66cf6eef4098bdb64bb0f5 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Tue, 18 Sep 2018 01:17:22 +0300 Subject: [PATCH] Remove redundant stopThread() signal --- src/qt/bitcoin.cpp | 5 ++--- src/qt/bitcoin.h | 1 - src/qt/intro.cpp | 5 ++--- src/qt/intro.h | 1 - 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index 6e08dae3c..050c1071d 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -212,7 +212,7 @@ BitcoinApplication::~BitcoinApplication() if(coreThread) { qDebug() << __func__ << ": Stopping thread"; - Q_EMIT stopThread(); + coreThread->quit(); coreThread->wait(); qDebug() << __func__ << ": Stopped thread"; } @@ -279,8 +279,7 @@ void BitcoinApplication::startThread() connect(this, &BitcoinApplication::requestedInitialize, executor, &BitcoinCore::initialize); connect(this, &BitcoinApplication::requestedShutdown, executor, &BitcoinCore::shutdown); /* make sure executor object is deleted in its own thread */ - connect(this, &BitcoinApplication::stopThread, executor, &QObject::deleteLater); - connect(this, &BitcoinApplication::stopThread, coreThread, &QThread::quit); + connect(coreThread, &QThread::finished, executor, &QObject::deleteLater); coreThread->start(); } diff --git a/src/qt/bitcoin.h b/src/qt/bitcoin.h index 48b590757..ffed45236 100644 --- a/src/qt/bitcoin.h +++ b/src/qt/bitcoin.h @@ -99,7 +99,6 @@ public Q_SLOTS: Q_SIGNALS: void requestedInitialize(); void requestedShutdown(); - void stopThread(); void splashFinished(); void windowShown(BitcoinGUI* window); diff --git a/src/qt/intro.cpp b/src/qt/intro.cpp index 0b61b0531..62c642ee7 100644 --- a/src/qt/intro.cpp +++ b/src/qt/intro.cpp @@ -158,7 +158,7 @@ Intro::~Intro() { delete ui; /* Ensure thread is finished before it is deleted */ - Q_EMIT stopThread(); + thread->quit(); thread->wait(); } @@ -306,8 +306,7 @@ void Intro::startThread() connect(executor, &FreespaceChecker::reply, this, &Intro::setStatus); connect(this, &Intro::requestCheck, executor, &FreespaceChecker::check); /* make sure executor object is deleted in its own thread */ - connect(this, &Intro::stopThread, executor, &QObject::deleteLater); - connect(this, &Intro::stopThread, thread, &QThread::quit); + connect(thread, &QThread::finished, executor, &QObject::deleteLater); thread->start(); } diff --git a/src/qt/intro.h b/src/qt/intro.h index 2b3da963e..a38dbcceb 100644 --- a/src/qt/intro.h +++ b/src/qt/intro.h @@ -54,7 +54,6 @@ public: Q_SIGNALS: void requestCheck(); - void stopThread(); public Q_SLOTS: void setStatus(int status, const QString &message, quint64 bytesAvailable);