aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bbot/agent/agent.cxx13
1 files changed, 13 insertions, 0 deletions
diff --git a/bbot/agent/agent.cxx b/bbot/agent/agent.cxx
index ff380c8..d6a7d4b 100644
--- a/bbot/agent/agent.cxx
+++ b/bbot/agent/agent.cxx
@@ -1984,6 +1984,17 @@ start_auxiliary_machines (const vector<bootstrapped_machine*>& ams,
//
string envs; // Combined environments.
+ auto amg (
+ make_exception_guard (
+ [&amrs] ()
+ {
+ if (!amrs.empty ())
+ {
+ info << "trying to force auxiliary machines down";
+ stop_auxiliary_machines (amrs);
+ }
+ }));
+
for (size_t i (0); i != n; ++i)
{
const auxiliary_machine& tam (tm.auxiliary_machines[i]);
@@ -1996,6 +2007,8 @@ start_auxiliary_machines (const vector<bootstrapped_machine*>& ams,
}));
assert (j != e);
+ // Note: can throw interrupt.
+ //
pair<auxiliary_machine_result, string> p (
start_auxiliary_machine (**j,
tam.environment_name,