summaryrefslogtreecommitdiff
path: root/cpp/src/IcePatch/Client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IcePatch/Client.cpp')
-rw-r--r--cpp/src/IcePatch/Client.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/cpp/src/IcePatch/Client.cpp b/cpp/src/IcePatch/Client.cpp
index ce6828f8150..d29aabe2da2 100644
--- a/cpp/src/IcePatch/Client.cpp
+++ b/cpp/src/IcePatch/Client.cpp
@@ -194,6 +194,7 @@ IcePatch::Client::run(int argc, char* argv[])
}
catch (const FileAccessException& ex)
{
+ cout << endl; // There might still be a non-terminated line on cout.
cerr << appName() << ": " << ex << ":\n" << ex.reason << endl;
if (router)
{
@@ -201,6 +202,16 @@ IcePatch::Client::run(int argc, char* argv[])
}
return EXIT_FAILURE;
}
+ catch (const BusyException& ex)
+ {
+ cout << endl; // There might still be a non-terminated line on cout.
+ cerr << appName() << ": patching service busy, try again later" << endl;
+ if (router)
+ {
+ router->shutdown();
+ }
+ return EXIT_FAILURE;
+ }
if (router)
{