[jboss-cvs] JBossAS SVN: r74802 - projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jun 18 12:23:39 EDT 2008
Author: alesj
Date: 2008-06-18 12:23:38 -0400 (Wed, 18 Jun 2008)
New Revision: 74802
Modified:
projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractVirtualFileHandler.java
Log:
Allow . or .. on leaves.
Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractVirtualFileHandler.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractVirtualFileHandler.java 2008-06-18 16:00:54 UTC (rev 74801)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/AbstractVirtualFileHandler.java 2008-06-18 16:23:38 UTC (rev 74802)
@@ -430,31 +430,38 @@
VirtualFileHandler current = this;
for (int i = 0; i < tokens.size(); ++i)
{
- if (current == null || current.isLeaf())
+ if (current == null)
return null;
String token = tokens.get(i);
- if (PathTokenizer.isCurrentToken(token) == false)
+ if (PathTokenizer.isCurrentToken(token))
+ continue;
+
+ if (PathTokenizer.isReverseToken(token))
{
- if (PathTokenizer.isReverseToken(token))
- {
- VirtualFileHandler parent = current.getParent();
- if (parent == null) // TODO - still IOE or null?
- throw new IOException("Using reverse path on top file handler: " + current + ", " + path);
- else
- current = parent;
- }
- else if (current instanceof StructuredVirtualFileHandler)
- {
- StructuredVirtualFileHandler structured = (StructuredVirtualFileHandler) current;
- current = structured.createChildHandler(token);
- }
+ VirtualFileHandler parent = current.getParent();
+ if (parent == null) // TODO - still IOE or null?
+ throw new IOException("Using reverse path on top file handler: " + current + ", " + path);
else
- {
- String remainingPath = PathTokenizer.getRemainingPath(tokens, i);
- return current.getChild(remainingPath);
- }
+ current = parent;
+
+ continue;
}
+
+ if (current.isLeaf())
+ {
+ return null;
+ }
+ else if (current instanceof StructuredVirtualFileHandler)
+ {
+ StructuredVirtualFileHandler structured = (StructuredVirtualFileHandler)current;
+ current = structured.createChildHandler(token);
+ }
+ else
+ {
+ String remainingPath = PathTokenizer.getRemainingPath(tokens, i);
+ return current.getChild(remainingPath);
+ }
}
// The last one is the result
More information about the jboss-cvs-commits
mailing list