提交 79c743ae 编写于 作者: J jglick

Fix for projects which have a "bootstrap" checkout which then runs its own checkout e.g. from Ant.

Hudson will now correctly compute changelogs for the extra modules.


git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@1201 71c3de6d-444a-0410-be80-ed276b4c234a
上级 86f7460b
......@@ -19,6 +19,7 @@ import hudson.org.apache.tools.ant.taskdefs.cvslib.ChangeLogTask;
import hudson.util.ArgumentListBuilder;
import hudson.util.ForkOutputStream;
import hudson.util.FormFieldValidator;
import java.util.Collections;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.taskdefs.Expand;
import org.apache.tools.zip.ZipEntry;
......@@ -45,6 +46,7 @@ import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
import java.util.Set;
import java.util.TreeSet;
import java.util.HashSet;
import java.util.HashMap;
import java.util.regex.Matcher;
......@@ -272,10 +274,17 @@ public class CVSSCM extends AbstractCVSFamilySCM {
parseUpdateOutput("",baos, changedFileNames);
} else {
StringTokenizer tokens = new StringTokenizer(module);
while(tokens.hasMoreTokens()) {
String moduleName = tokens.nextToken();
Set<String> moduleNames = new TreeSet(Collections.list(new StringTokenizer(module)));
// Add in any existing CVS dirs, in case project checked out its own.
File[] subdirs = workspace.getLocal().listFiles();
if (subdirs != null) {
for (File s : subdirs) {
if (new File(s, "CVS").isDirectory()) {
moduleNames.add(s.getName());
}
}
}
for (String moduleName : moduleNames) {
// capture the output during update
ByteArrayOutputStream baos = new ByteArrayOutputStream();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册