Author: bodewig
Date: Mon Oct 20 03:33:34 2008
New Revision: 706207
URL: http://svn.apache.org/viewvc?rev=706207&view=rev
Log:
properly deal wih multiple modules specified in the package attribute
Modified:
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/cvslib/ChangeLogParser.java
ant/core/trunk/src/tests/antunit/taskdefs/cvs/repository/CVSROOT/history
Modified:
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/cvslib/ChangeLogParser.java
URL:
http://svn.apache.org/viewvc/ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/cvslib/ChangeLogParser.java?rev=706207&r1=706206&r2=706207&view=diff
==============================================================================
---
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/cvslib/ChangeLogParser.java
(original)
+++
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/cvslib/ChangeLogParser.java
Mon Oct 20 03:33:34 2008
@@ -20,11 +20,13 @@
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
+import java.util.ArrayList;
import java.util.Enumeration;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
+import java.util.StringTokenizer;
import java.util.TimeZone;
import org.apache.tools.ant.taskdefs.AbstractCvsTask;
import org.apache.tools.ant.util.CollectionUtils;
@@ -81,16 +83,22 @@
public ChangeLogParser(boolean remote, String packageName, List modules) {
this.remote = remote;
- moduleNames = new String[modules.size() + (packageName == null ? 0 :
1)];
- moduleNameLengths = new int[moduleNames.length];
- int i = 0;
+
+ ArrayList names = new ArrayList();
if (packageName != null) {
- moduleNames[i] = packageName;
- moduleNameLengths[i++] = packageName.length();
+ for (StringTokenizer tok = new StringTokenizer(packageName);
+ tok.hasMoreTokens(); ) {
+ names.add(tok.nextToken());
+ }
}
- for (Iterator iter = modules.iterator(); iter.hasNext(); i++) {
+ for (Iterator iter = modules.iterator(); iter.hasNext(); ) {
AbstractCvsTask.Module m = (AbstractCvsTask.Module) iter.next();
- moduleNames[i] = m.getName();
+ names.add(m.getName());
+ }
+
+ moduleNames = (String[]) names.toArray(new String[names.size()]);
+ moduleNameLengths = new int[moduleNames.length];
+ for (int i = 0; i < moduleNames.length; i++) {
moduleNameLengths[i] = moduleNames[i].length();
}
}
Modified:
ant/core/trunk/src/tests/antunit/taskdefs/cvs/repository/CVSROOT/history
URL:
http://svn.apache.org/viewvc/ant/core/trunk/src/tests/antunit/taskdefs/cvs/repository/CVSROOT/history?rev=706207&r1=706206&r2=706207&view=diff
==============================================================================
--- ant/core/trunk/src/tests/antunit/taskdefs/cvs/repository/CVSROOT/history
(original)
+++ ant/core/trunk/src/tests/antunit/taskdefs/cvs/repository/CVSROOT/history
Mon Oct 20 03:33:34 2008
@@ -52,3 +52,7 @@
O48f8b329|stefan|/tmp/testoutput/*0|antmodule1||antmodule1
O48f8b32b|stefan|/tmp/testoutput/*0|ant module 2||ant module 2
O48f8b32c|stefan|/tmp/testoutput/*0|antmodule3||antmodule3
+O48fc5e01|stefan|/tmp/testoutput/*0|antmodule3||antmodule3
+O48fc5e03|stefan|/tmp/testoutput/*0|antmodule1||antmodule1
+O48fc5e05|stefan|/tmp/testoutput/*0|ant module 2||ant module 2
+O48fc5e06|stefan|/tmp/testoutput/*0|antmodule3||antmodule3