From 25394950ae562d6d70249745638edbbd14884d2c Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Fri, 16 Sep 2011 09:30:20 -0700 Subject: Handle the case where a child task tries to kill a parent while it is dying Still looks pretty racy --- src/rt/rust_task.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/rt/rust_task.cpp') diff --git a/src/rt/rust_task.cpp b/src/rt/rust_task.cpp index ffa9e5b7e99..7ef3975fd51 100644 --- a/src/rt/rust_task.cpp +++ b/src/rt/rust_task.cpp @@ -254,7 +254,7 @@ rust_task::yield(size_t time_in_us) { LOG(this, task, "task %s @0x%" PRIxPTR " yielding for %d us", name, this, time_in_us); - if (killed) { + if (killed && !dead()) { if (blocked()) { unblock(); } -- cgit 1.4.1-3-g733a5