ExitCode AppState::abort (lumiera::Error& problem) { ERROR (common, "Aborting Lumiera after unhandled error: %s", cStr(problem.what())); log_and_clear_unexpected_errorstate(); try { if (subsystems_) { subsystems_->triggerEmergency(true); subsystems_->shutdownAll(); } return maybeWait (); } catch (...) { return abort(); } }
/** @note we just grab and retain the error message. * @todo rather keep the exception object around. */ ExecResult::ExecResult (lumiera::Error const& problem) : log_(problem.what()) { }
/** failed result, with reason given.*/ Result (lumiera::Error const& reason) : failureLog_(reason.what()) { }