Browse Source

plug memory leak in non-forked <junit>

PR: 27420


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@276917 13f79535-47bb-0310-9956-ffa450edef68
master
Stefan Bodewig 20 years ago
parent
commit
dfaa904e5c
1 changed files with 9 additions and 0 deletions
  1. +9
    -0
      src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java

+ 9
- 0
src/main/org/apache/tools/ant/taskdefs/optional/junit/JUnitTask.java View File

@@ -654,6 +654,7 @@ public class JUnitTask extends Task {
testLists.addAll(executeOrQueue(tests.elements(), forkPerTest)); testLists.addAll(executeOrQueue(tests.elements(), forkPerTest));
} }


try {
Iterator iter = testLists.iterator(); Iterator iter = testLists.iterator();
while (iter.hasNext()) { while (iter.hasNext()) {
List l = (List) iter.next(); List l = (List) iter.next();
@@ -663,6 +664,11 @@ public class JUnitTask extends Task {
execute(l); execute(l);
} }
} }
} finally {
if (classLoader != null && reloading) {
classLoader.cleanup();
}
}
} }


/** /**
@@ -1091,6 +1097,9 @@ public class JUnitTask extends Task {
} }
if (classLoader != null) { if (classLoader != null) {
classLoader.resetThreadContextLoader(); classLoader.resetThreadContextLoader();
if (!reloading) {
classLoader.cleanup();
}
} }
} }
} }


Loading…
Cancel
Save