jglick 2005/03/29 13:46:36 Modified: src/main/org/apache/tools/ant Project.java Log: Avoid hypothetical memory leak by not holding a strong reference to the thread or thread groups used as keys to report task associations. Revision Changes Path 1.190 +7 -4 ant/src/main/org/apache/tools/ant/Project.java Index: Project.java =================================================================== RCS file: /home/cvs/ant/src/main/org/apache/tools/ant/Project.java,v retrieving revision 1.189 retrieving revision 1.190 diff -u -r1.189 -r1.190 --- Project.java 29 Mar 2005 19:56:15 -0000 1.189 +++ Project.java 29 Mar 2005 21:46:36 -0000 1.190 @@ -23,6 +23,7 @@ import java.io.InputStream; import java.lang.reflect.Method; import java.lang.reflect.Modifier; +import java.util.Collections; import java.util.Enumeration; import java.util.Hashtable; import java.util.Iterator; @@ -31,6 +32,8 @@ import java.util.Vector; import java.util.Set; import java.util.HashSet; +import java.util.Map; +import java.util.WeakHashMap; import org.apache.tools.ant.input.DefaultInputHandler; import org.apache.tools.ant.input.InputHandler; import org.apache.tools.ant.helper.DefaultExecutor; @@ -157,11 +160,11 @@ */ private ClassLoader coreLoader = null; - /** Records the latest task to be executed on a thread (Thread to Task). */ - private Hashtable threadTasks = new Hashtable(); + /** Records the latest task to be executed on a thread. */ + private Map/*<Thread,Task>*/ threadTasks = Collections.synchronizedMap(new WeakHashMap()); - /** Records the latest task to be executed on a thread Group. */ - private Hashtable threadGroupTasks = new Hashtable(); + /** Records the latest task to be executed on a thread group. */ + private Map/*<ThreadGroup,Task>*/ threadGroupTasks = Collections.synchronizedMap(new WeakHashMap()); /** * Called to handle any input requests.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]