From e7f41a3d3f1451a086f7f5449603cb433d83951b Mon Sep 17 00:00:00 2001 From: shenmo Date: Tue, 12 Nov 2024 11:08:53 +0000 Subject: [PATCH] sync: fix: crash when installation complete Signed-off-by: shenmo --- src/pages/appintopage.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/pages/appintopage.cpp b/src/pages/appintopage.cpp index a35ccc6..612b12d 100644 --- a/src/pages/appintopage.cpp +++ b/src/pages/appintopage.cpp @@ -285,8 +285,10 @@ void AppIntoPage::setDownloadWidget(DownloadListWidget *w) } dw = w; - connect(w, &DownloadListWidget::downloadFinished, [=]() - { isDownloading(SparkAPI::getServerUrl() + SparkAPI::getArchDir() + spk.path() + "/" + info["Filename"].toString()); }); + connect(w, &DownloadListWidget::downloadFinished, this, [=]() { + isDownloading(SparkAPI::getServerUrl() + SparkAPI::getArchDir() + spk.path() + "/" + info["Filename"].toString()); + }, + Qt::QueuedConnection); } void AppIntoPage::initUI() @@ -484,7 +486,10 @@ void AppIntoPage::on_downloadButton_clicked() return; } - connect(item, &DownloadItem::finished, [=]() { isDownloading(downloadUrl); }); + connect(item, &DownloadItem::finished, this, [=]() { + isDownloading(downloadUrl); + }, + Qt::QueuedConnection); item->install(0); isDownloading(downloadUrl); @@ -505,7 +510,10 @@ void AppIntoPage::on_downloadButton_clicked() item->reinstall = true; } ui->downloadButton->setEnabled(false); - connect(item, &DownloadItem::finished, [=]() { isDownloading(downloadUrl); }); + connect(item, &DownloadItem::finished, this, [=]() { + isDownloading(downloadUrl); + }, + Qt::QueuedConnection); isDownloading(downloadUrl); }