Author: markt
Date: Sun Mar 24 21:00:59 2013
New Revision: 1460462

URL: http://svn.apache.org/r1460462
Log:
Once we have all of a partial message send it on if we can. Don't buffer it as 
we have no idea if/when the next part of the message might arrive.

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

Modified: tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java?rev=1460462&r1=1460461&r2=1460462&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java Sun Mar 24 
21:00:59 2013
@@ -450,18 +450,24 @@ public abstract class WsFrameBase {
         }
 
         // Frame is fully received
-        if (continuationExpected) {
-            // More data for this message expected
-            newFrame();
-        } else {
-            // Message is complete - send it
+        // Send the message if either:
+        // - partial messages are supported
+        // - the message is complete
+        if (usePartial() || !continuationExpected) {
             messageBufferBinary.flip();
             ByteBuffer copy =
                     ByteBuffer.allocate(messageBufferBinary.limit());
             copy.put(messageBufferBinary);
             copy.flip();
-            sendMessageBinary(copy, true);
+            sendMessageBinary(copy, !continuationExpected);
             messageBufferBinary.clear();
+        }
+
+        if (continuationExpected) {
+            // More data for this message expected, start a new frame
+            newFrame();
+        } else {
+            // Message is complete, start a new message
             newMessage();
         }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to