From ced8393f203fc661df7a5a0159a5edfd826eef12 Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Thu, 14 Jul 2011 19:39:53 -0700 Subject: Modify task::join to indicate how the task terminated This involves sticking yet another field into the task structure --- src/rt/rust_task.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/rt/rust_task.cpp') diff --git a/src/rt/rust_task.cpp b/src/rt/rust_task.cpp index fd9a2cc862c..d56cb8b6276 100644 --- a/src/rt/rust_task.cpp +++ b/src/rt/rust_task.cpp @@ -82,7 +82,8 @@ rust_task::rust_task(rust_scheduler *sched, rust_task_list *state, running_on(-1), pinned_on(-1), local_region(&sched->srv->local_region), - _on_wakeup(NULL) + _on_wakeup(NULL), + failed(false) { LOGPTR(sched, "new task", (uintptr_t)this); DLOG(sched, task, "sizeof(task) = %d (0x%x)", sizeof *this, sizeof *this); @@ -230,6 +231,7 @@ rust_task::fail() { // FIXME: implement unwinding again. if (this == sched->root_task) sched->fail(); + failed = true; } void -- cgit 1.4.1-3-g733a5