diff options
| author | flow <flowlnlnln@gmail.com> | 2022-07-28 15:58:04 -0300 |
|---|---|---|
| committer | flow <flowlnlnln@gmail.com> | 2022-09-20 18:36:09 -0300 |
| commit | 654157096985d0cec0d3b7bb53f39a5c0157206e (patch) | |
| tree | 91a522b27991652829711e2f7cfb28887b53ed1f /launcher/modplatform/atlauncher | |
| parent | 4b0ceea8941826134c949b1c2fb80e05c174e5ec (diff) | |
| download | PrismLauncher-654157096985d0cec0d3b7bb53f39a5c0157206e.tar.gz PrismLauncher-654157096985d0cec0d3b7bb53f39a5c0157206e.tar.bz2 PrismLauncher-654157096985d0cec0d3b7bb53f39a5c0157206e.zip | |
fix: simplify abort handling and add missing emits
Signed-off-by: flow <flowlnlnln@gmail.com>
Diffstat (limited to 'launcher/modplatform/atlauncher')
| -rw-r--r-- | launcher/modplatform/atlauncher/ATLPackInstallTask.cpp | 18 | ||||
| -rw-r--r-- | launcher/modplatform/atlauncher/ATLPackInstallTask.h | 1 |
2 files changed, 19 insertions, 0 deletions
diff --git a/launcher/modplatform/atlauncher/ATLPackInstallTask.cpp b/launcher/modplatform/atlauncher/ATLPackInstallTask.cpp index 13cab256..a553eafd 100644 --- a/launcher/modplatform/atlauncher/ATLPackInstallTask.cpp +++ b/launcher/modplatform/atlauncher/ATLPackInstallTask.cpp @@ -90,6 +90,7 @@ void PackInstallTask::executeTask() QObject::connect(netJob, &NetJob::succeeded, this, &PackInstallTask::onDownloadSucceeded); QObject::connect(netJob, &NetJob::failed, this, &PackInstallTask::onDownloadFailed); + QObject::connect(netJob, &NetJob::aborted, this, &PackInstallTask::onDownloadAborted); } void PackInstallTask::onDownloadSucceeded() @@ -169,6 +170,12 @@ void PackInstallTask::onDownloadFailed(QString reason) emitFailed(reason); } +void PackInstallTask::onDownloadAborted() +{ + jobPtr.reset(); + emitAborted(); +} + void PackInstallTask::deleteExistingFiles() { setStatus(tr("Deleting existing files...")); @@ -675,6 +682,11 @@ void PackInstallTask::installConfigs() abortable = true; setProgress(current, total); }); + connect(jobPtr.get(), &NetJob::aborted, [&]{ + abortable = false; + jobPtr.reset(); + emitAborted(); + }); jobPtr->start(); } @@ -831,6 +843,12 @@ void PackInstallTask::downloadMods() abortable = true; setProgress(current, total); }); + connect(jobPtr.get(), &NetJob::aborted, [&] + { + abortable = false; + jobPtr.reset(); + emitAborted(); + }); jobPtr->start(); } diff --git a/launcher/modplatform/atlauncher/ATLPackInstallTask.h b/launcher/modplatform/atlauncher/ATLPackInstallTask.h index a7124d59..ed4436f0 100644 --- a/launcher/modplatform/atlauncher/ATLPackInstallTask.h +++ b/launcher/modplatform/atlauncher/ATLPackInstallTask.h @@ -93,6 +93,7 @@ protected: private slots: void onDownloadSucceeded(); void onDownloadFailed(QString reason); + void onDownloadAborted(); void onModsDownloaded(); void onModsExtracted(); |
