This is an automated email from the ASF dual-hosted git repository.

remm pushed a commit to branch 10.1.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/10.1.x by this push:
     new c52bd4c3f5 Allow trailing slash for webAppMount in Resources
c52bd4c3f5 is described below

commit c52bd4c3f59cb866b2b9e97b67b8a7d6a52c15f8
Author: remm <r...@apache.org>
AuthorDate: Fri Jun 20 14:13:30 2025 +0200

    Allow trailing slash for webAppMount in Resources
    
    BZ69717
    Mostly for compatibility reasons as most paths are usually without a
    trailing slash, if it is not meaningful.
---
 java/org/apache/catalina/webresources/AbstractResourceSet.java     | 4 ++--
 test/org/apache/catalina/webresources/TestDirResourceSetMount.java | 2 +-
 webapps/docs/changelog.xml                                         | 4 ++++
 3 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/java/org/apache/catalina/webresources/AbstractResourceSet.java 
b/java/org/apache/catalina/webresources/AbstractResourceSet.java
index 80961d738a..31d87d787d 100644
--- a/java/org/apache/catalina/webresources/AbstractResourceSet.java
+++ b/java/org/apache/catalina/webresources/AbstractResourceSet.java
@@ -72,8 +72,8 @@ public abstract class AbstractResourceSet extends 
LifecycleBase implements WebRe
     public final void setWebAppMount(String webAppMount) {
         checkPath(webAppMount);
         // Optimise internal processing
-        if (webAppMount.equals("/")) {
-            this.webAppMount = "";
+        if (webAppMount.endsWith("/")) {
+            this.webAppMount = webAppMount.substring(0, webAppMount.length() - 
1);
         } else {
             this.webAppMount = webAppMount;
         }
diff --git a/test/org/apache/catalina/webresources/TestDirResourceSetMount.java 
b/test/org/apache/catalina/webresources/TestDirResourceSetMount.java
index 9282669cb5..fee86d67a3 100644
--- a/test/org/apache/catalina/webresources/TestDirResourceSetMount.java
+++ b/test/org/apache/catalina/webresources/TestDirResourceSetMount.java
@@ -52,7 +52,7 @@ public class TestDirResourceSetMount extends 
AbstractTestResourceSetMount {
     public WebResourceRoot getWebResourceRoot() {
         TesterWebResourceRoot root = new TesterWebResourceRoot();
         WebResourceSet webResourceSet =
-                new DirResourceSet(new TesterWebResourceRoot(), getMount(),
+                new DirResourceSet(new TesterWebResourceRoot(), getMount() + 
"/",
                         getBaseDir().getAbsolutePath(), "/");
         root.setMainResources(webResourceSet);
         return root;
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 762bd1a2fb..643649b464 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -133,6 +133,10 @@
         Fix JMX value for <code>keepAliveCount</code> on the endpoint. Also add
         the value of <code>useVirtualThreads</code> in JMX. (remm)
       </fix>
+      <fix>
+        <bug>69717</bug>: Allow trailing slash for <code>webAppMount</code>
+        path in <code>Resources</code>, for compatibility reasons. (remm)
+      </fix>
     </changelog>
   </subsection>
   <subsection name="Jasper">


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to