Author: markt Date: Fri Feb 27 15:02:12 2015 New Revision: 1662718 URL: http://svn.apache.org/r1662718 Log: Fix NPE
Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java Modified: tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java?rev=1662718&r1=1662717&r2=1662718&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/AbstractHttp11Protocol.java Fri Feb 27 15:02:12 2015 @@ -289,7 +289,7 @@ public abstract class AbstractHttp11Prot return new UpgradeProcessorInternal(socket, leftoverInput, (InternalHttpUpgradeHandler) httpUpgradeHandler); } else { - return new UpgradeProcessorExternal(socket, leftoverInput); + return new UpgradeProcessorExternal(socket, leftoverInput, httpUpgradeHandler); } } } Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java?rev=1662718&r1=1662717&r2=1662718&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorBase.java Fri Feb 27 15:02:12 2015 @@ -34,7 +34,11 @@ public abstract class UpgradeProcessorBa protected static final int INFINITE_TIMEOUT = -1; - public UpgradeProcessorBase(SocketWrapperBase<?> wrapper, ByteBuffer leftOverInput) { + private final HttpUpgradeHandler httpUpgradeHandler; + + public UpgradeProcessorBase(SocketWrapperBase<?> wrapper, ByteBuffer leftOverInput, + HttpUpgradeHandler httpUpgradeHandler) { + this.httpUpgradeHandler = httpUpgradeHandler; wrapper.unRead(leftOverInput); } @@ -48,19 +52,19 @@ public abstract class UpgradeProcessorBa @Override - public final void recycle() { - // Currently a NO-OP as upgrade processors are not recycled. + public HttpUpgradeHandler getHttpUpgradeHandler() { + return httpUpgradeHandler; } - // ---------------------------- Processor methods that are NO-OP for upgrade - @Override - public HttpUpgradeHandler getHttpUpgradeHandler() { - return null; + public final void recycle() { + // Currently a NO-OP as upgrade processors are not recycled. } + // ---------------------------- Processor methods that are NO-OP for upgrade + @Override public final Executor getExecutor() { return null; Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java?rev=1662718&r1=1662717&r2=1662718&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorExternal.java Fri Feb 27 15:02:12 2015 @@ -21,6 +21,7 @@ import java.nio.ByteBuffer; import javax.servlet.ServletInputStream; import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpUpgradeHandler; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; @@ -38,8 +39,9 @@ public class UpgradeProcessorExternal ex private final UpgradeServletOutputStream upgradeServletOutputStream; - public UpgradeProcessorExternal(SocketWrapperBase<?> wrapper, ByteBuffer leftOverInput) { - super(wrapper, leftOverInput); + public UpgradeProcessorExternal(SocketWrapperBase<?> wrapper, ByteBuffer leftOverInput, + HttpUpgradeHandler httpUpgradeHandler) { + super(wrapper, leftOverInput, httpUpgradeHandler); this.upgradeServletInputStream = new UpgradeServletInputStream(wrapper); this.upgradeServletOutputStream = new UpgradeServletOutputStream(wrapper); Modified: tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java?rev=1662718&r1=1662717&r2=1662718&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/upgrade/UpgradeProcessorInternal.java Fri Feb 27 15:02:12 2015 @@ -32,7 +32,7 @@ public class UpgradeProcessorInternal ex public UpgradeProcessorInternal(SocketWrapperBase<?> wrapper, ByteBuffer leftOverInput, InternalHttpUpgradeHandler internalHttpUpgradeHandler) { - super(wrapper, leftOverInput); + super(wrapper, leftOverInput, internalHttpUpgradeHandler); this.internalHttpUpgradeHandler = internalHttpUpgradeHandler; /* * Leave timeouts in the hands of the upgraded protocol. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org