Author: cmueller
Date: Sat Sep 22 22:08:04 2012
New Revision: 1388908
URL: http://svn.apache.org/viewvc?rev=1388908&view=rev
Log:
fixed a regression in ValidatorSchemaImportTest which was introduced with
r1388762
Modified:
camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/FileUtil.java
camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/util/FileUtilTest.java
Modified:
camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/FileUtil.java
URL:
http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/FileUtil.java?rev=1388908&r1=1388907&r2=1388908&view=diff
==============================================================================
---
camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/FileUtil.java
(original)
+++
camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/FileUtil.java
Sat Sep 22 22:08:04 2012
@@ -209,12 +209,7 @@ public final class FileUtil {
if (path == null) {
return null;
}
-
- // only normalize path if it contains .. as we want to avoid:
path/../sub/../sub2 as this can leads to trouble
- if (path.indexOf("..") == -1) {
- return path;
- }
-
+
// only normalize if contains a path separator
if (path.indexOf(File.separator) == -1) {
return path;
@@ -234,6 +229,8 @@ public final class FileUtil {
if (part.equals("..") && !stack.isEmpty() &&
!"..".equals(stack.peek())) {
// only pop if there is a previous path, which is not a ".."
path either
stack.pop();
+ } else if (part.equals(".") || part.isEmpty()) {
+ // do nothing because we don't want a path like foo/./bar
} else {
stack.push(part);
}
@@ -379,6 +376,7 @@ public final class FileUtil {
return renamed;
}
+ @SuppressWarnings("resource")
public static void copyFile(File from, File to) throws IOException {
FileChannel in = new FileInputStream(from).getChannel();
FileChannel out = new FileOutputStream(to).getChannel();
Modified:
camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/util/FileUtilTest.java
URL:
http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/util/FileUtilTest.java?rev=1388908&r1=1388907&r2=1388908&view=diff
==============================================================================
---
camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/util/FileUtilTest.java
(original)
+++
camel/branches/camel-2.9.x/camel-core/src/test/java/org/apache/camel/util/FileUtilTest.java
Sat Sep 22 22:08:04 2012
@@ -144,6 +144,8 @@ public class FileUtilTest extends TestCa
assertEquals("baz", FileUtil.compactPath("foo\\bar\\..\\..\\baz"));
assertEquals("..\\baz",
FileUtil.compactPath("foo\\bar\\..\\..\\..\\baz"));
assertEquals("..\\foo\\bar", FileUtil.compactPath("..\\foo\\bar"));
+ assertEquals("foo\\bar\\baz",
FileUtil.compactPath("foo\\bar\\.\\baz"));
+ assertEquals("foo\\bar\\baz",
FileUtil.compactPath("foo\\bar\\\\baz"));
} else {
assertEquals("../foo", FileUtil.compactPath("../foo"));
assertEquals("../../foo", FileUtil.compactPath("../../foo"));
@@ -156,6 +158,8 @@ public class FileUtilTest extends TestCa
assertEquals("baz", FileUtil.compactPath("foo/bar/../../baz"));
assertEquals("../baz",
FileUtil.compactPath("foo/bar/../../../baz"));
assertEquals("../foo/bar", FileUtil.compactPath("../foo/bar"));
+ assertEquals("foo/bar/baz", FileUtil.compactPath("foo/bar/./baz"));
+ assertEquals("foo/bar/baz", FileUtil.compactPath("foo/bar//baz"));
}
}