about summary refs log tree commit diff
path: root/src/rt/rust_task.cpp
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2012-02-03 17:26:54 -0800
committerBrian Anderson <banderson@mozilla.com>2012-02-03 23:48:12 -0800
commit12fa90888e56c81088e30edd26d1bc404b3e334d (patch)
treedc172057b2c4c78859be010907945cc257ac2946 /src/rt/rust_task.cpp
parente7f00b64933b85289921f641b2658f41eeb338ec (diff)
downloadrust-12fa90888e56c81088e30edd26d1bc404b3e334d.tar.gz
rust-12fa90888e56c81088e30edd26d1bc404b3e334d.zip
rt: Clean up the way the kernel tracks tasks
Diffstat (limited to 'src/rt/rust_task.cpp')
-rw-r--r--src/rt/rust_task.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/rt/rust_task.cpp b/src/rt/rust_task.cpp
index 150ef1a18c1..1563fe63516 100644
--- a/src/rt/rust_task.cpp
+++ b/src/rt/rust_task.cpp
@@ -275,12 +275,11 @@ rust_task::~rust_task()
     DLOG(thread, task, "~rust_task %s @0x%" PRIxPTR ", refcnt=%d",
          name, (uintptr_t)this, ref_count);
 
+    // FIXME: We should do this when the task exits, not in the destructor
     if (supervisor) {
         supervisor->deref();
     }
 
-    kernel->release_task_id(user.id);
-
     /* FIXME: tighten this up, there are some more
        assertions that hold at task-lifecycle events. */
     I(thread, ref_count == 0); // ||
@@ -288,6 +287,7 @@ rust_task::~rust_task()
 
     // Delete all the stacks. There may be more than one if the task failed
     // and no landing pads stopped to clean up.
+    // FIXME: We should do this when the task exits, not in the destructor
     while (stk != NULL) {
         del_stk(this, stk);
     }