summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_engine/executor
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildtool/execution_engine/executor')
-rw-r--r--src/buildtool/execution_engine/executor/executor.hpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/buildtool/execution_engine/executor/executor.hpp b/src/buildtool/execution_engine/executor/executor.hpp
index d0bc7aee..097284e1 100644
--- a/src/buildtool/execution_engine/executor/executor.hpp
+++ b/src/buildtool/execution_engine/executor/executor.hpp
@@ -972,11 +972,17 @@ class Rebuilder {
return artifacts_cached.error();
}
std::ostringstream msg{};
- for (auto const& [path, info] : *artifacts.value()) {
- auto const& info_cached = artifacts_cached.value()->at(path);
- if (info != info_cached) {
- RecordFlakyAction(&msg, action, path, info, info_cached);
+ try {
+ for (auto const& [path, info] : *artifacts.value()) {
+ auto const& info_cached =
+ artifacts_cached.value()->at(path);
+ if (info != info_cached) {
+ RecordFlakyAction(
+ &msg, action, path, info, info_cached);
+ }
}
+ } catch (std::exception const& ex) {
+ return ex.what();
}
if (msg.tellp() > 0) {
stats.IncrementActionsFlakyCounter();