Merge pull request #2811 from Trial97/fix_java_abort

fix download java abort being stuck
This commit is contained in:
Alexandru Ionut Tripon 2024-09-14 20:19:02 +03:00 committed by GitHub
commit ad786fb983
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 13 additions and 9 deletions

View File

@ -59,7 +59,9 @@ bool TaskStepWrapper::canAbort() const
bool TaskStepWrapper::abort()
{
if (m_task && m_task->canAbort()) {
return m_task->abort();
auto status = m_task->abort();
emitFailed("Aborted.");
return status;
}
return Task::abort();
}

View File

@ -37,7 +37,9 @@ bool MinecraftLoadAndCheck::canAbort() const
bool MinecraftLoadAndCheck::abort()
{
if (m_task && m_task->canAbort()) {
return m_task->abort();
auto status = m_task->abort();
emitFailed("Aborted.");
return status;
}
return Task::abort();
}

View File

@ -180,10 +180,7 @@ void AutoInstallJava::downloadJava(Meta::Version::Ptr version, QString javaName)
deletePath();
emitFailed(reason);
});
connect(this, &Task::aborted, this, [this, deletePath] {
m_current_task->abort();
deletePath();
});
connect(m_current_task.get(), &Task::aborted, this, [deletePath] { deletePath(); });
connect(m_current_task.get(), &Task::succeeded, this, &AutoInstallJava::setJavaPathFromPartial);
connect(m_current_task.get(), &Task::failed, this, &AutoInstallJava::tryNextMajorJava);
connect(m_current_task.get(), &Task::progress, this, &AutoInstallJava::setProgress);
@ -236,7 +233,10 @@ void AutoInstallJava::tryNextMajorJava()
}
bool AutoInstallJava::abort()
{
if (m_current_task && m_current_task->canAbort())
return m_current_task->abort();
return true;
if (m_current_task && m_current_task->canAbort()) {
auto status = m_current_task->abort();
emitFailed("Aborted.");
return status;
}
return Task::abort();
}