[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