Author: markt
Date: Thu Jul 11 10:09:48 2013
New Revision: 1502175

URL: http://svn.apache.org/r1502175
Log:
Avoid NPE when sending buffered data from the server (there is no mask in this 
case).

Modified:
    tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java

Modified: 
tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java?rev=1502175&r1=1502174&r2=1502175&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java 
Thu Jul 11 10:09:48 2013
@@ -675,10 +675,14 @@ public abstract class WsRemoteEndpointIm
 
             // Write the payload
             while (payload.hasRemaining() && outputBuffer.hasRemaining()) {
-                outputBuffer.put(
-                        (byte) (payload.get() ^ (mask[maskIndex++] & 0xFF)));
-                if (maskIndex > 3) {
-                    maskIndex = 0;
+                if (mask == null) {
+                    outputBuffer.put(payload.get());
+                } else {
+                    outputBuffer.put(
+                            (byte) (payload.get() ^ (mask[maskIndex++] & 
0xFF)));
+                    if (maskIndex > 3) {
+                        maskIndex = 0;
+                    }
                 }
             }
             if (payload.hasRemaining()) {



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to