Author: markt
Date: Mon Feb 20 23:42:51 2012
New Revision: 1291523

URL: http://svn.apache.org/viewvc?rev=1291523&view=rev
Log:
Mask is per fragment so track position against mask per fragment.
Remove some completed TODOs.

Modified:
    tomcat/trunk/java/org/apache/catalina/websocket/WsInputStream.java

Modified: tomcat/trunk/java/org/apache/catalina/websocket/WsInputStream.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/websocket/WsInputStream.java?rev=1291523&r1=1291522&r2=1291523&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/websocket/WsInputStream.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/websocket/WsInputStream.java Mon Feb 
20 23:42:51 2012
@@ -30,7 +30,7 @@ public class WsInputStream extends java.
 
 
     private long remaining;
-    private long read;
+    private long readThisFragment;
 
     public WsInputStream(UpgradeProcessor<?> processor) throws IOException {
         this.processor = processor;
@@ -43,11 +43,6 @@ public class WsInputStream extends java.
 
         // TODO: Per frame extension handling is not currently supported.
 
-        // TODO: Handle other control frames.
-
-        // TODO: Handle control frames appearing in the middle of a multi-frame
-        //       message
-
         int i = processor.read();
         this.wsFrameHeader = new WsFrameHeader(i);
 
@@ -73,6 +68,8 @@ public class WsInputStream extends java.
         for (int j = 0; j < mask.length; j++) {
             mask[j] = processor.read() & 0xFF;
         }
+
+        readThisFragment = 0;
     }
 
     public WsFrameHeader getFrameHeader() {
@@ -103,12 +100,12 @@ public class WsInputStream extends java.
         }
 
         remaining--;
-        read++;
+        readThisFragment++;
 
         int masked = processor.read();
         if(masked == -1) {
             return -1;
         }
-        return masked ^ mask[(int) ((read - 1) % 4)];
+        return masked ^ mask[(int) ((readThisFragment - 1) % 4)];
     }
 }



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

Reply via email to