diff options
-rw-r--r-- | bbot/worker/worker.cxx | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/bbot/worker/worker.cxx b/bbot/worker/worker.cxx index 85b3265..17c4fa9 100644 --- a/bbot/worker/worker.cxx +++ b/bbot/worker/worker.cxx @@ -1443,24 +1443,29 @@ build (size_t argc, const char* argv[]) c.out.close (); if (!c.wait ()) throw_generic_error (EIO); + + // We use exit code 2 to signal abnormal termination but where we managed + // to upload the result manifest. See startup() for details. + // + return rm.status != result_status::abnormal ? 0 : 2; } catch (const manifest_serialization& e) { fail << "invalid result manifest: " << e.description; } + catch (const io_error& e) // In case not derived from system_error. + { + error << "unable to upload result manifest to " << url << ": " << e; + } catch (const system_error& e) { - // We use exit code 3 to signal an unsuccessful attempt to upload the - // result manifest. See startup() for details. - // error << "unable to upload result manifest to " << url << ": " << e; - return 3; } - // We use exit code 2 to signal abnormal termination but where we managed - // to upload the result manifest. See startup() for details. + // We use exit code 3 to signal an unsuccessful attempt to upload the result + // manifest. See startup() for details. // - return rm.status != result_status::abnormal ? 0 : 2; + return 3; } static int |