From dfaa904e5c39c7c3b0481e1d44fb64fb69efca18 Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Wed, 6 Oct 2004 15:38:04 +0000 Subject: [PATCH] plug memory leak in non-forked PR: 27420 git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@276917 13f79535-47bb-0310-9956-ffa450edef68 --- .../tools/ant/taskdefs/optional/junit/JUnitTask.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java b/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java index 1a9161e8b..4df063861 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java @@ -654,6 +654,7 @@ public class JUnitTask extends Task { testLists.addAll(executeOrQueue(tests.elements(), forkPerTest)); } + try { Iterator iter = testLists.iterator(); while (iter.hasNext()) { List l = (List) iter.next(); @@ -663,6 +664,11 @@ public class JUnitTask extends Task { execute(l); } } + } finally { + if (classLoader != null && reloading) { + classLoader.cleanup(); + } + } } /** @@ -1091,6 +1097,9 @@ public class JUnitTask extends Task { } if (classLoader != null) { classLoader.resetThreadContextLoader(); + if (!reloading) { + classLoader.cleanup(); + } } } }