diff options
Diffstat (limited to 'src/plugins/android/androidsdkmanager.cpp')
-rw-r--r-- | src/plugins/android/androidsdkmanager.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/plugins/android/androidsdkmanager.cpp b/src/plugins/android/androidsdkmanager.cpp index 9ddbaba5b10..1cba998f1aa 100644 --- a/src/plugins/android/androidsdkmanager.cpp +++ b/src/plugins/android/androidsdkmanager.cpp @@ -293,21 +293,23 @@ static GroupItem installationRecipe(const Storage<DialogStorage> &dialogStorage, }; return Group { + continueOnError, onGroupSetup(onSetup), For (uninstallIterator) >> Do { - finishAllAndSuccess, + continueOnError, ProcessTask(onUninstallSetup, onDone) }, For (installIterator) >> Do { - finishAllAndSuccess, + continueOnError, ProcessTask(onInstallSetup, onDone) - } + }, + onGroupDone([dialogStorage] { dialogStorage->m_dialog->setProgress(100); }) }; } static GroupItem updateRecipe(const Storage<DialogStorage> &dialogStorage) { - const auto onUpdateSetup = [dialogStorage](Process &process) { + const auto onSetup = [dialogStorage](Process &process) { const QStringList args = {"--update", sdkRootArg()}; QuestionProgressDialog *dialog = dialogStorage->m_dialog.get(); setupSdkProcess(args, &process, dialog, 0, 1); @@ -318,7 +320,7 @@ static GroupItem updateRecipe(const Storage<DialogStorage> &dialogStorage) handleSdkProcess(dialogStorage->m_dialog.get(), result); }; - return ProcessTask(onUpdateSetup, onDone); + return ProcessTask(onSetup, onDone); } class AndroidSdkManagerPrivate |