You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by bu...@apache.org on 2005/10/27 15:28:08 UTC
DO NOT REPLY [Bug 37268] New: -
mkdir task parses path incorrectly when it includes "../" - Fix included.
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG�
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=37268>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND�
INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=37268
Summary: mkdir task parses path incorrectly when it includes
"../" - Fix included.
Product: Ant
Version: 1.6.5
Platform: All
OS/Version: Linux
Status: NEW
Severity: blocker
Priority: P2
Component: Core tasks
AssignedTo: dev@ant.apache.org
ReportedBy: l.guendogdu@feature-it.com
When a mkdir task contains ".." as directory name, it will not be parsed
correctly. Same thing as it happened with Bug #26765. The fix is similar: call
the FiltUtils.normalize() to make sure the path is parsed correctly. Patch included.
diff -Nurb apache-ant-1.6.5/src/main/org/apache/tools/ant/taskdefs/Mkdir.java
apache-ant-1.6.5-fixed/src/main/org/apache/tools/ant/taskdefs/Mkdir.java
--- apache-ant-1.6.5/src/main/org/apache/tools/ant/taskdefs/Mkdir.java
2005-06-02 15:19:58.000000000 +0200
+++ apache-ant-1.6.5-fixed/src/main/org/apache/tools/ant/taskdefs/Mkdir.java
2005-10-27 15:26:50.000000000 +0200
@@ -20,6 +20,7 @@
import java.io.File;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
+import org.apache.tools.ant.util.FileUtils;
/**
* Creates a given directory.
@@ -34,6 +35,7 @@
public class Mkdir extends Task {
private static final int MKDIR_RETRY_SLEEP_MILLIS = 10;
+ private static final FileUtils fileUtils = FileUtils.getFileUtils();
/**
* our little directory
*/
@@ -48,6 +50,9 @@
throw new BuildException("dir attribute is required", getLocation());
}
+ // Normalize file name to make sure ".." are resolved correctly.
+ dir = fileUtils.normalize(dir.getAbsolutePath());
+
if (dir.isFile()) {
throw new BuildException("Unable to create directory as a file "
+ "already exists with that name: "
--
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org