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

Reply via email to