[libcalamares] Fix early failure mode
- There is more to failing out of loadModules() than just emitting modulesFailed, so instead share the failure code with the code after loading modules -- but don't load any.
This commit is contained in:
parent
0db8082ae1
commit
d66393f1ae
@ -176,16 +176,10 @@ ModuleManager::loadModules()
|
|||||||
QTimer::singleShot( 0, this, [ this ]()
|
QTimer::singleShot( 0, this, [ this ]()
|
||||||
{
|
{
|
||||||
QStringList failedModules = checkDependencies();
|
QStringList failedModules = checkDependencies();
|
||||||
if ( !failedModules.isEmpty() )
|
|
||||||
{
|
|
||||||
emit modulesFailed( failedModules );
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Settings::InstanceDescriptionList customInstances =
|
Settings::InstanceDescriptionList customInstances =
|
||||||
Settings::instance()->customModuleInstances();
|
Settings::instance()->customModuleInstances();
|
||||||
|
|
||||||
const auto modulesSequence = Settings::instance()->modulesSequence();
|
const auto modulesSequence = failedModules.isEmpty() ? Settings::instance()->modulesSequence() : Settings::ModuleSequence();
|
||||||
for ( const auto& modulePhase : modulesSequence )
|
for ( const auto& modulePhase : modulesSequence )
|
||||||
{
|
{
|
||||||
ModuleAction currentAction = modulePhase.first;
|
ModuleAction currentAction = modulePhase.first;
|
||||||
@ -336,7 +330,7 @@ ModuleManager::checkDependencies()
|
|||||||
somethingWasRemovedBecauseOfUnmetDependencies = true;
|
somethingWasRemovedBecauseOfUnmetDependencies = true;
|
||||||
m_availableDescriptorsByModuleName.erase( it );
|
m_availableDescriptorsByModuleName.erase( it );
|
||||||
failed << moduleName;
|
failed << moduleName;
|
||||||
cWarning() << "Module" << moduleName << "has unmet requirement" << depName;
|
cWarning() << "Module" << moduleName << "has unknown requirement" << depName;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user