aboutsummaryrefslogtreecommitdiff
path: root/libjava/java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/lang/ThreadGroup.java4
-rw-r--r--libjava/java/lang/natThread.cc2
2 files changed, 3 insertions, 3 deletions
diff --git a/libjava/java/lang/ThreadGroup.java b/libjava/java/lang/ThreadGroup.java
index 1aa1a9a..41a017d 100644
--- a/libjava/java/lang/ThreadGroup.java
+++ b/libjava/java/lang/ThreadGroup.java
@@ -80,9 +80,7 @@ public class ThreadGroup
}
// This is called by the Thread code to remove a Thread from our
- // internal list. FIXME: currently, it isn't called at all. There
- // doesn't appear to be any way to remove a Thread from a
- // ThreadGroup (except the unimplemented destroy method).
+ // internal list.
final void remove (Thread t)
{
threads.removeElement(t);
diff --git a/libjava/java/lang/natThread.cc b/libjava/java/lang/natThread.cc
index 9dc192e..9e663ba 100644
--- a/libjava/java/lang/natThread.cc
+++ b/libjava/java/lang/natThread.cc
@@ -250,6 +250,8 @@ java::lang::Thread::finish_ (void)
_Jv_MutexUnlock (&t->interrupt_mutex);
}
+ group->remove (this);
+
_Jv_MonitorExit (this);
}