summaryrefslogtreecommitdiff
path: root/src/Task.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Task.cc')
-rw-r--r--src/Task.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/Task.cc b/src/Task.cc
index eb6cc7f..a4ec5bc 100644
--- a/src/Task.cc
+++ b/src/Task.cc
@@ -101,6 +101,10 @@ void Balau::Task::coroutine() {
Printer::elog(E_TASK, "Stackless task %s at %p is task-switching.", getName(), this);
}
}
+ catch (EAgain & e) {
+ Printer::log(M_ERROR, "Task %s at %p threw an EAgain - you should catch it and yield; the app will crash now", getName(), this);
+ m_status = FAULTED;
+ }
catch (GeneralException & e) {
Printer::log(M_WARNING, "Task %s at %p caused an exception: `%s' - stopping.", getName(), this, e.getMsg());
const char * details = e.getDetails();