diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2025-02-05 10:33:59 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2025-02-05 10:33:59 +0200 |
commit | 5d44f8fcf72c7df437776ee86356037fc8ec8056 (patch) | |
tree | 94a15d4399e7070ec1c6674015c86a27a2fa4768 | |
parent | 0ab20e311f8607bdceb7485da51bf97520eda4b8 (diff) |
-rw-r--r-- | bbot/worker/worker.cxx | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/bbot/worker/worker.cxx b/bbot/worker/worker.cxx index 36c5e71..056f391 100644 --- a/bbot/worker/worker.cxx +++ b/bbot/worker/worker.cxx @@ -6420,7 +6420,7 @@ try assert (rm.status == result_status::abort || rm.status == result_status::skip); - if (!rwd.empty ()) + if (!rwd.empty ()) // @@ When can it be empty? { change_wd (trace, nullptr /* log */, rwd); @@ -6484,7 +6484,12 @@ try assert (e.code ().category () == std::generic_category () && e.code ().value () == ENOSPC); - error << "unable to serialize result manifest: " << e; + try + { + error << "unable to serialize result manifest: " << e; + } + catch (...) {} + return 4; } } @@ -6496,7 +6501,12 @@ catch (const system_error& e) if (e.code ().category () == std::generic_category () && e.code ().value () == ENOSPC) { - error << "no space left on device"; + try + { + error << "no space left on device"; + } + catch (...) {} + return 4; } else @@ -6505,6 +6515,11 @@ catch (const system_error& e) return 1; // Abnormal, no result manifest uploaded. } } +catch (const std::exception& e) +{ + error << "unexpected error: " << e; + return 1; // Abnormal, no result manifest uploaded. +} // Parse the task_manifest::auxiliary_environment value into the list of // environment variable assignments as expected by the process API. Throw |