logic: Fixed automatic update check only works on Qt thread
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
QtRequest::QtRequest()
|
||||
{
|
||||
m_networkManager = new QNetworkAccessManager(this);
|
||||
QObject::connect(m_networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(finished(QNetworkReply*)));
|
||||
QObject::connect(m_networkManager, &QNetworkAccessManager::finished, this, &QtRequest::finished);
|
||||
}
|
||||
|
||||
void QtRequest::sendRequest(QString url)
|
||||
|
||||
@@ -53,6 +53,7 @@ void QtUpdateChecker::check(bool force)
|
||||
urlString += ("&platform=" + platformString + "bit").c_str();
|
||||
|
||||
// version
|
||||
// Version::setApplicationVersion(Version::fromString("2017.3.10")); // for debugging
|
||||
urlString += ("&version=" + Version::getApplicationVersion().toDisplayString()).c_str();
|
||||
|
||||
// license
|
||||
@@ -147,5 +148,10 @@ void QtUpdateChecker::check(bool force)
|
||||
|
||||
void QtUpdateChecker::checkUpdate()
|
||||
{
|
||||
check();
|
||||
m_onQtThread(
|
||||
[this]()
|
||||
{
|
||||
check();
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef QT_UPDATE_CHECKER_H
|
||||
#define QT_UPDATE_CHECKER_H
|
||||
|
||||
#include "qt/utility/QtThreadedFunctor.h"
|
||||
#include "UpdateChecker.h"
|
||||
|
||||
class QtUpdateChecker
|
||||
@@ -10,6 +11,9 @@ public:
|
||||
static void check(bool force = false);
|
||||
|
||||
virtual void checkUpdate() override;
|
||||
|
||||
private:
|
||||
QtThreadedLambdaFunctor m_onQtThread;
|
||||
};
|
||||
|
||||
#endif // QT_UPDATE_CHECKER_H
|
||||
|
||||
Reference in New Issue
Block a user