diff --git a/uppsrc/ide/UppHub.cpp b/uppsrc/ide/UppHub.cpp index 5b5ad7a9d..b91539c3d 100644 --- a/uppsrc/ide/UppHub.cpp +++ b/uppsrc/ide/UppHub.cpp @@ -540,11 +540,23 @@ void UppHubDlg::Update() if(!PromptYesNo("Pull updates for all modules?")) return; UrepoConsole console; + + int errors = 0; for(const UppHubNest& n : upv) { String dir = GetHubDir() + "/" + n.name; - if(DirectoryExists(dir)) - console.Git(dir, "pull --rebase"); + if(!DirectoryExists(dir)) + continue; + + if(console.Git(dir, "pull --rebase") != 0) + ++errors; } + if(errors == 0) + return; + + ErrorOK( + Format("Update failed (%d errors). Review the logs to diagnose and resolve the issues.", + errors)); + console.Perform(); } void UppHubDlg::Install(const Index& ii_) diff --git a/uppsrc/ide/urepo.h b/uppsrc/ide/urepo.h index c765d6e9a..cb4e68ee1 100644 --- a/uppsrc/ide/urepo.h +++ b/uppsrc/ide/urepo.h @@ -2,8 +2,6 @@ #include class UrepoConsole : public WithUrepoConsoleLayout { - typedef UrepoConsole CLASSNAME; - Font font; void AddResult(const String& out); bool canceled = false;