You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by "Daniel Holmes (JIRA)" <ji...@apache.org> on 2015/05/19 20:03:59 UTC
[jira] [Created] (IVY-1522) Ivy 2.4.0 improperly handles modules
with colon (:) in version
Daniel Holmes created IVY-1522:
----------------------------------
Summary: Ivy 2.4.0 improperly handles modules with colon (:) in version
Key: IVY-1522
URL: https://issues.apache.org/jira/browse/IVY-1522
Project: Ivy
Issue Type: Bug
Components: Core
Affects Versions: 2.4.0
Reporter: Daniel Holmes
Priority: Critical
This was not an issue in 2.2.0.
I have some modules in my project which produce debian .deb files and those modules versions include a colon (:) in the version because the version scheme was reset, so an epoch is set.
I also for this module use the extends tag, and in processing the parent location, this code in FileUtil which is called during a FileUtil.normalize() is causing the : in the resolve parent file name to have the : replaced with a :/.
The comment on the if seems to explain that it is trying to handle a Windows/NetWare case, but the assumption to process any colon in the path is too broad.
private static String[] dissect(String path) {
char sep = File.separatorChar;
path = path.replace('/', sep).replace('\\', sep);
// // make sure we are dealing with an absolute path
// if (!isAbsolutePath(path)) {
// throw new BuildException(path + " is not an absolute path");
// }
String root = null;
int colon = path.indexOf(':');
if (colon > 0) { // && (ON_DOS || ON_NETWARE)) {
int next = colon + 1;
root = path.substring(0, next);
char[] ca = path.toCharArray();
root += sep;
// remove the initial separator; the root has it.
next = (ca[next] == sep) ? next + 1 : next;
StringBuffer sbPath = new StringBuffer();
// Eliminate consecutive slashes after the drive spec:
for (int i = next; i < ca.length; i++) {
if (ca[i] != sep || ca[i - 1] != sep) {
sbPath.append(ca[i]);
}
}
path = sbPath.toString();
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)