Author: remm Date: Fri Feb 6 13:37:54 2015 New Revision: 1657806 URL: http://svn.apache.org/r1657806 Log: Related to BZ57528: improve the algorithm to handle an exception or null return value in getContent and avoid NPE or returning corrupted data.
Modified: tomcat/tc8.0.x/trunk/java/org/apache/catalina/webresources/AbstractArchiveResource.java Modified: tomcat/tc8.0.x/trunk/java/org/apache/catalina/webresources/AbstractArchiveResource.java URL: http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/catalina/webresources/AbstractArchiveResource.java?rev=1657806&r1=1657805&r2=1657806&view=diff ============================================================================== --- tomcat/tc8.0.x/trunk/java/org/apache/catalina/webresources/AbstractArchiveResource.java (original) +++ tomcat/tc8.0.x/trunk/java/org/apache/catalina/webresources/AbstractArchiveResource.java Fri Feb 6 13:37:54 2015 @@ -172,6 +172,10 @@ public abstract class AbstractArchiveRes int pos = 0; try (JarInputStreamWrapper jisw = getJarInputStreamWrapper()) { + if (jisw == null) { + // An error occurred, don't return corrupted content + return null; + } while (pos < size) { int n = jisw.read(result, pos, size - pos); if (n < 0) { @@ -187,6 +191,8 @@ public abstract class AbstractArchiveRes getLog().debug(sm.getString("abstractResource.getContentFail", getWebappPath()), ioe); } + // Don't return corrupted content + return null; } return result; --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org