Author: markt Date: Mon Jan 21 16:54:30 2019 New Revision: 1851754 URL: http://svn.apache.org/viewvc?rev=1851754&view=rev Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=63038 Ensure that a ClassNotFoundException is thrown when attempting to load a class from a corrupted JAR file.
Modified: tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoaderBase.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoaderBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoaderBase.java?rev=1851754&r1=1851753&r2=1851754&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoaderBase.java (original) +++ tomcat/trunk/java/org/apache/catalina/loader/WebappClassLoaderBase.java Mon Jan 21 16:54:30 2019 @@ -2315,6 +2315,11 @@ public abstract class WebappClassLoaderB } byte[] binaryContent = resource.getContent(); + if (binaryContent == null) { + // Something went wrong reading the class bytes (and will have + // been logged at debug level). + return null; + } Manifest manifest = resource.getManifest(); URL codeBase = resource.getCodeBase(); Certificate[] certificates = resource.getCertificates(); Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1851754&r1=1851753&r2=1851754&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Mon Jan 21 16:54:30 2019 @@ -98,6 +98,11 @@ errors rather than server side errors and only logged at debug level. (markt) </scode> + <fix> + <bug>63038</bug>: Ensure that a <code>ClassNotFoundException</code> is + thrown when attempting to load a class from a corrupted JAR file. + (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