Author: markt Date: Mon Nov 17 08:06:24 2014 New Revision: 1640089 URL: http://svn.apache.org/r1640089 Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=57216 Catch "/" as an invalid setting for context path and improve handling of null values.
Modified: tomcat/tc8.0.x/trunk/ (props changed) tomcat/tc8.0.x/trunk/java/org/apache/catalina/core/StandardContext.java tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.0.x/trunk/ ------------------------------------------------------------------------------ Merged /tomcat/trunk:r1640088 Modified: tomcat/tc8.0.x/trunk/java/org/apache/catalina/core/StandardContext.java URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/catalina/core/StandardContext.java?rev=1640089&r1=1640088&r2=1640089&view=diff ============================================================================== --- tomcat/tc8.0.x/trunk/java/org/apache/catalina/core/StandardContext.java (original) +++ tomcat/tc8.0.x/trunk/java/org/apache/catalina/core/StandardContext.java Mon Nov 17 08:06:24 2014 @@ -2008,13 +2008,20 @@ public class StandardContext extends Con */ @Override public void setPath(String path) { - if (path == null || (!path.equals("") && !path.startsWith("/"))) { + boolean invalid = false; + if (path == null || path.equals("/")) { + path = ""; + invalid = true; + } else if (!path.equals("") && !path.startsWith("/")) { this.path = "/" + path; - log.warn(sm.getString( - "standardContext.pathInvalid", path, this.path)); + invalid = true; } else { this.path = path; } + if (invalid) { + log.warn(sm.getString( + "standardContext.pathInvalid", path, this.path)); + } encodedPath = urlEncoder.encode(this.path); if (getName() == null) { setName(this.path); Modified: tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml?rev=1640089&r1=1640088&r2=1640089&view=diff ============================================================================== --- tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml Mon Nov 17 08:06:24 2014 @@ -60,6 +60,12 @@ in a directory context for a user with specified user name. Based on a patch provided by Jason McIntosh. (violetagg) </fix> + <fix> + <bug>57216</bug>: Improve handling of invalid context paths. A value of + <code>null</code> is now correctly changed to <code>""</code> + and a value of <code>"/"</code> is now also changed to + <code>""</code> and logged as invalid. (markt) + </fix> </changelog> </subsection> <subsection name="Coyote"> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org