Author: markt
Date: Fri Jan 4 17:06:12 2019
New Revision: 1850403
URL: http://svn.apache.org/viewvc?rev=1850403&view=rev
Log:
Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=63056
Correct a regression in the fix for bug 53737 that did not correctly scan the
web application directory structure for JSPs.
Modified:
tomcat/trunk/java/org/apache/jasper/JspC.java
tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java
tomcat/trunk/test/org/apache/jasper/servlet/TestJspCServletContext.java
tomcat/trunk/webapps/docs/changelog.xml
Modified: tomcat/trunk/java/org/apache/jasper/JspC.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/JspC.java?rev=1850403&r1=1850402&r2=1850403&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/jasper/JspC.java (original)
+++ tomcat/trunk/java/org/apache/jasper/JspC.java Fri Jan 4 17:06:12 2019
@@ -1426,13 +1426,13 @@ public class JspC extends Task implement
Set<String> paths = context.getResourcePaths(input);
for (String path : paths) {
if (path.endsWith("/")) {
- scanFilesInternal(input.substring(0, input.length() -1) +
path);
- } else if (jspConfig.isJspPage(input + path)) {
+ scanFilesInternal(path);
+ } else if (jspConfig.isJspPage(path)) {
pages.add(path);
} else {
String ext = path.substring(path.lastIndexOf('.') + 1);
if (extensions.contains(ext)) {
- pages.add(input + path.substring(1));
+ pages.add(path);
}
}
}
Modified: tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java?rev=1850403&r1=1850402&r2=1850403&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java
(original)
+++ tomcat/trunk/java/org/apache/jasper/servlet/JspCServletContext.java Fri Jan
4 17:06:12 2019
@@ -475,11 +475,11 @@ public class JspCServletContext implemen
// Let the Set implementation handle duplicates
int sep = entryName.indexOf("/", jarPath.length());
if (sep < 0) {
- // This is a file
-
thePaths.add(entryName.substring(jarPath.length() - 1));
+ // This is a file - strip leading
"META-INF/resources"
+ thePaths.add(entryName.substring(18));
} else {
- // This is a directory
-
thePaths.add(entryName.substring(jarPath.length() - 1, sep + 1));
+ // This is a directory - strip leading
"META-INF/resources"
+ thePaths.add(entryName.substring(18, sep + 1));
}
}
}
Modified:
tomcat/trunk/test/org/apache/jasper/servlet/TestJspCServletContext.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/jasper/servlet/TestJspCServletContext.java?rev=1850403&r1=1850402&r2=1850403&view=diff
==============================================================================
--- tomcat/trunk/test/org/apache/jasper/servlet/TestJspCServletContext.java
(original)
+++ tomcat/trunk/test/org/apache/jasper/servlet/TestJspCServletContext.java Fri
Jan 4 17:06:12 2019
@@ -141,7 +141,7 @@ public class TestJspCServletContext {
null, appDir.toURI().toURL(), null, false, false);
Set<String> paths = context.getResourcePaths("/");
- Assert.assertEquals(paths.size(), 10);
+ Assert.assertEquals(10, paths.size());
Assert.assertTrue(paths.contains("/WEB-INF/"));
Assert.assertTrue(paths.contains("/folder/"));
Assert.assertTrue(paths.contains("/'singlequote.jsp"));
@@ -152,5 +152,11 @@ public class TestJspCServletContext {
Assert.assertTrue(paths.contains("/resourceB.jsp"));
Assert.assertTrue(paths.contains("/resourceF.jsp"));
Assert.assertTrue(paths.contains("/warDirContext.jsp"));
+
+ paths = context.getResourcePaths("/folder/");
+ Assert.assertEquals(3, paths.size());
+ Assert.assertTrue(paths.contains("/folder/resourceC.jsp"));
+ Assert.assertTrue(paths.contains("/folder/resourceD.jsp"));
+ Assert.assertTrue(paths.contains("/folder/resourceE.jsp"));
}
}
Modified: tomcat/trunk/webapps/docs/changelog.xml
URL:
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1850403&r1=1850402&r2=1850403&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Fri Jan 4 17:06:12 2019
@@ -104,6 +104,15 @@
</fix>
</changelog>
</subsection>
+ <subsection name="Jasper">
+ <changelog>
+ <fix>
+ <bug>63056</bug>: Correct a regression in the fix for <bug>53737</bug>
+ that did not correctly scan the web application directory structure for
+ JSPs. (markt)
+ </fix>
+ </changelog>
+ </subsection>
<subsection name="WebSocket">
<changelog>
<fix>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]