diff options
| author | Brian Anderson <banderson@mozilla.com> | 2011-09-16 09:30:20 -0700 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2011-09-16 10:05:12 -0700 |
| commit | 25394950ae562d6d70249745638edbbd14884d2c (patch) | |
| tree | ead0a3340738c3a91fd0ae47bf4708c930a6df99 /src/rt/rust_task.cpp | |
| parent | ad470d741e03a20debea1249a2d5c3f09ce38ce7 (diff) | |
| download | rust-25394950ae562d6d70249745638edbbd14884d2c.tar.gz rust-25394950ae562d6d70249745638edbbd14884d2c.zip | |
Handle the case where a child task tries to kill a parent while it is dying
Still looks pretty racy
Diffstat (limited to 'src/rt/rust_task.cpp')
| -rw-r--r-- | src/rt/rust_task.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
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(); } |
