remm 00/12/17 19:41:12
Modified: catalina/src/share/org/apache/catalina/resources
DirectoryBean.java
Log:
- Path generation should be more robust.
Problems reported by Jon. I'm waiting for feedback on this, as I've been
unable to reproduce the bugs.
Revision Changes Path
1.4 +10 -5
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/resources/DirectoryBean.java
Index: DirectoryBean.java
===================================================================
RCS file:
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/resources/DirectoryBean.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- DirectoryBean.java 2000/10/17 19:56:03 1.3
+++ DirectoryBean.java 2000/12/18 03:41:10 1.4
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/resources/DirectoryBean.java,v
1.3 2000/10/17 19:56:03 craigmcc Exp $
- * $Revision: 1.3 $
- * $Date: 2000/10/17 19:56:03 $
+ * $Header:
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/resources/DirectoryBean.java,v
1.4 2000/12/18 03:41:10 remm Exp $
+ * $Revision: 1.4 $
+ * $Date: 2000/12/18 03:41:10 $
*
* ====================================================================
*
@@ -92,7 +92,7 @@
* manner. No internal synchronization is performed.
*
* @author Craig R. McClanahan
- * @version $Revision: 1.3 $ $Date: 2000/10/17 19:56:03 $
+ * @version $Revision: 1.4 $ $Date: 2000/12/18 03:41:10 $
*/
public final class DirectoryBean extends ResourceBean {
@@ -271,6 +271,8 @@
writer.print(rewriteUrl(contextPath));
if (parent.equals(""))
parent = "/";
+ if (contextPath.endsWith("/"))
+ parent = parent.substring(1);
writer.print(parent);
writer.print("\">");
writer.print(sm.getString("directory.parent", parent));
@@ -310,7 +312,10 @@
writer.print("<td align=\"left\"> \r\n");
writer.print("<a href=\"");
writer.print(rewriteUrl(contextPath));
- writer.print(rewriteUrl(resources[i].getName()));
+ String resourceName = rewriteUrl(resources[i].getName());
+ if ((contextPath.endsWith("/")) && (resourceName.length() > 0))
+ resourceName = resourceName.substring(1);
+ writer.print(resourceName);
writer.print("\"><tt>");
writer.print(trimmed);
if (resources[i] instanceof DirectoryBean)