aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/m_ver_check/BKTUSVersionCheckTask.cpp8
-rw-r--r--src/m_ver_check/GitHubVersionCheckTask.cpp18
-rw-r--r--src/m_ver_check/SoftwareVersion.cpp7
-rw-r--r--src/m_ver_check/UpdateTab.cpp2
4 files changed, 17 insertions, 18 deletions
diff --git a/src/m_ver_check/BKTUSVersionCheckTask.cpp b/src/m_ver_check/BKTUSVersionCheckTask.cpp
index e9b3b1a..4de695b 100644
--- a/src/m_ver_check/BKTUSVersionCheckTask.cpp
+++ b/src/m_ver_check/BKTUSVersionCheckTask.cpp
@@ -48,6 +48,12 @@ BKTUSVersionCheckTask::BKTUSVersionCheckTask()
meta_.api = "BKTUS.com";
meta_.current_version = current_version_;
meta_.local_commit_hash = GFProjectGitCommitHash();
+
+ connect(this, &BKTUSVersionCheckTask::SignalUpgradeVersion, this,
+ [](const SoftwareVersion& sv) {
+ GFDurableCacheSave(DUP("update_checking_cache"),
+ DUP(QJsonDocument(sv.ToJson()).toJson()));
+ });
}
auto BKTUSVersionCheckTask::Run() -> int {
@@ -57,7 +63,7 @@ auto BKTUSVersionCheckTask::Run() -> int {
{"https://ftp.bktus.com/GpgFrontend/appcast.xml"},
{"https://git.bktus.com/GpgFrontend/GpgFrontend/atom/?h=" +
current_version_},
- {"https://git.bktus.com/GpgFrontend/GpgFrontend/atom/?id=" +
+ {"https://git.bktus.com/GpgFrontend/GpgFrontend/atom/?h=" +
meta_.local_commit_hash},
};
diff --git a/src/m_ver_check/GitHubVersionCheckTask.cpp b/src/m_ver_check/GitHubVersionCheckTask.cpp
index 72e47e7..35c6ca0 100644
--- a/src/m_ver_check/GitHubVersionCheckTask.cpp
+++ b/src/m_ver_check/GitHubVersionCheckTask.cpp
@@ -47,6 +47,12 @@ GitHubVersionCheckTask::GitHubVersionCheckTask()
meta_.api = "GitHub";
meta_.current_version = current_version_;
meta_.local_commit_hash = GFProjectGitCommitHash();
+
+ connect(this, &GitHubVersionCheckTask::SignalUpgradeVersion, this,
+ [](const SoftwareVersion& sv) {
+ GFDurableCacheSave(DUP("update_checking_cache"),
+ DUP(QJsonDocument(sv.ToJson()).toJson()));
+ });
}
auto GitHubVersionCheckTask::Run() -> int {
@@ -176,7 +182,8 @@ void GitHubVersionCheckTask::slot_parse_current_tag_info(QNetworkReply* reply) {
}
auto object = current_reply_json["object"].toObject();
- if (object["type"].toString() != "commit") {
+ if (object["type"].toString() != "tag" &&
+ object["type"].toString() != "commit") {
FLOG_WARN("remote tag: %1 is not a ref: %2", meta_.current_version,
object["type"].toString());
return;
@@ -203,14 +210,7 @@ void GitHubVersionCheckTask::slot_parse_current_commit_info(
return;
}
- auto object = current_reply_json["object"].toObject();
- if (object["type"].toString() != "commit") {
- FLOG_WARN("remote tag: %1 is not a ref: %2", meta_.current_version,
- object["type"].toString());
- return;
- }
-
- auto sha = object["sha"].toString();
+ auto sha = current_reply_json["sha"].toString();
FLOG_DEBUG("got remote commit hash from github: %1",
meta_.remote_commit_hash_by_tag);
diff --git a/src/m_ver_check/SoftwareVersion.cpp b/src/m_ver_check/SoftwareVersion.cpp
index c6dbf6e..b868af1 100644
--- a/src/m_ver_check/SoftwareVersion.cpp
+++ b/src/m_ver_check/SoftwareVersion.cpp
@@ -39,13 +39,6 @@
#include "GFModuleCommonUtils.hpp"
auto SoftwareVersion::NeedUpgrade() const -> bool {
- MLogDebug(QString("compare version current: %1 latest %2, result: %3")
- .arg(current_version)
- .arg(latest_version)
- .arg(GFCompareSoftwareVersion(
- GFModuleStrDup(current_version.toUtf8()),
- GFModuleStrDup(latest_version.toUtf8()))));
-
return !latest_version.isEmpty() &&
GFCompareSoftwareVersion(GFModuleStrDup(current_version.toUtf8()),
GFModuleStrDup(latest_version.toUtf8())) < 0;
diff --git a/src/m_ver_check/UpdateTab.cpp b/src/m_ver_check/UpdateTab.cpp
index 7f4a321..b28ccf3 100644
--- a/src/m_ver_check/UpdateTab.cpp
+++ b/src/m_ver_check/UpdateTab.cpp
@@ -194,7 +194,7 @@ void UpdateTab::slot_show_version_status() {
"</center>");
upgrade_label_->show();
upgrade_info_box_->show();
- } else if (is_current_commit_hash_publish_in_remote != 0) {
+ } else if (is_current_commit_hash_publish_in_remote == 0) {
upgrade_label_->setText(
"<center>" +
tr("The commit hash for this build was not found in the official "