diff --git a/proposal/mutant/bootstrap.sh b/proposal/mutant/bootstrap.sh
index 1eb4ca0a1..2d0ddfe6a 100755
--- a/proposal/mutant/bootstrap.sh
+++ b/proposal/mutant/bootstrap.sh
@@ -26,3 +26,6 @@ java -classpath bootstrap/lib/start.jar:bootstrap/lib/init.jar org.apache.ant.st
# Use the full build as the build used by the build script
cp -r dist/lib bootstrap
+
+#clean up after bootstrap
+java -classpath bootstrap/lib/start.jar:bootstrap/lib/init.jar org.apache.ant.start.Main clean
diff --git a/proposal/mutant/build/ant1compat.xml b/proposal/mutant/build/ant1compat.xml
index ac7286099..31d194341 100644
--- a/proposal/mutant/build/ant1compat.xml
+++ b/proposal/mutant/build/ant1compat.xml
@@ -26,16 +26,14 @@
-
-
-
+
+
@@ -55,6 +53,7 @@
+
diff --git a/proposal/mutant/src/java/antcore/org/apache/ant/antcore/execution/ExecutionManager.java b/proposal/mutant/src/java/antcore/org/apache/ant/antcore/execution/ExecutionManager.java
index d7c63176e..0efeb63e2 100755
--- a/proposal/mutant/src/java/antcore/org/apache/ant/antcore/execution/ExecutionManager.java
+++ b/proposal/mutant/src/java/antcore/org/apache/ant/antcore/execution/ExecutionManager.java
@@ -222,8 +222,11 @@ public class ExecutionManager implements DemuxOutputReceiver {
* @param isErr true if this content is from the thread's error stream.
*/
public void threadOutput(String line, boolean isErr) {
- eventSupport.threadOutput(line, isErr);
+ if (mainFrame == null) {
+ eventSupport.threadOutput(line, isErr);
+ } else {
+ mainFrame.threadOutput(line, isErr);
+ }
}
-
}
diff --git a/proposal/mutant/src/java/antlibs/ant1compat/org/apache/tools/ant/Task.java b/proposal/mutant/src/java/antlibs/ant1compat/org/apache/tools/ant/Task.java
index 0bd1dbf5a..07bf003c1 100644
--- a/proposal/mutant/src/java/antlibs/ant1compat/org/apache/tools/ant/Task.java
+++ b/proposal/mutant/src/java/antlibs/ant1compat/org/apache/tools/ant/Task.java
@@ -133,10 +133,10 @@ public abstract class Task extends ProjectComponent
/**
- * XXX Adds a feature to the NestedTask attribute of the Task object
+ * Add a nested task to this Ant1 task.
*
- * @param task XXX The feature to be added to the NestedTask attribute
- * @exception ExecutionException XXX Description of Exception
+ * @param task The task to be added
+ * @exception ExecutionException if the task cannot be added.
*/
public void addNestedTask(org.apache.ant.common.antlib.Task task)
throws ExecutionException {
diff --git a/proposal/mutant/src/java/bootstrap/org/apache/ant/builder/Builder.java b/proposal/mutant/src/java/bootstrap/org/apache/ant/builder/Builder.java
index 09c1a8d6f..178440b26 100644
--- a/proposal/mutant/src/java/bootstrap/org/apache/ant/builder/Builder.java
+++ b/proposal/mutant/src/java/bootstrap/org/apache/ant/builder/Builder.java
@@ -124,6 +124,8 @@ public class Builder {
files.add(new File(PACKAGE_ROOT, "DirectoryScanner.java"));
files.add(new File(PACKAGE_ROOT, "FileScanner.java"));
files.add(new File(PACKAGE_ROOT, "PathTokenizer.java"));
+ files.add(new File(PACKAGE_ROOT, "TaskAdapter.java"));
+ files.add(new File(PACKAGE_ROOT, "MatchingTask.java"));
files.add(new File(PACKAGE_ROOT, "util/FileUtils.java"));
files.add(new File(PACKAGE_ROOT, "defaultManifest.mf"));
files.add(new File(TASKDEFS_ROOT, "defaults.properties"));
diff --git a/proposal/mutant/src/java/common/org/apache/ant/common/model/Project.java b/proposal/mutant/src/java/common/org/apache/ant/common/model/Project.java
index bc39d5a11..9f249f71e 100644
--- a/proposal/mutant/src/java/common/org/apache/ant/common/model/Project.java
+++ b/proposal/mutant/src/java/common/org/apache/ant/common/model/Project.java
@@ -524,7 +524,9 @@ public class Project extends ModelElement {
= fullProjectName == null ? localDependencyName
: fullProjectName + REF_DELIMITER + localDependencyName;
flattenDependency(flattenedList, fullDependencyName);
- flattenedList.add(fullDependencyName);
+ if (!flattenedList.contains(fullDependencyName)) {
+ flattenedList.add(fullDependencyName);
+ }
}
} catch (ModelException e) {
throw new ConfigException(e);