Author: remm
Date: Fri Jan 4 16:22:34 2019
New Revision: 1850400
URL: http://svn.apache.org/viewvc?rev=1850400&view=rev
Log:
63019: Use payload remaining bytes rather than limit when writing. Submitted by
Benoit Courtilly.
Modified:
tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
tomcat/trunk/webapps/docs/changelog.xml
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=1850400&r1=1850399&r2=1850400&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
(original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
Fri Jan 4 16:22:34 2019
@@ -744,12 +744,12 @@ public abstract class WsRemoteEndpointIm
}
// Next write the mask && length length
- if (payload.limit() < 126) {
- headerBuffer.put((byte) (payload.limit() | b));
- } else if (payload.limit() < 65536) {
+ if (payload.remaining() < 126) {
+ headerBuffer.put((byte) (payload.remaining() | b));
+ } else if (payload.remaining() < 65536) {
headerBuffer.put((byte) (126 | b));
- headerBuffer.put((byte) (payload.limit() >>> 8));
- headerBuffer.put((byte) (payload.limit() & 0xFF));
+ headerBuffer.put((byte) (payload.remaining() >>> 8));
+ headerBuffer.put((byte) (payload.remaining() & 0xFF));
} else {
// Will never be more than 2^31-1
headerBuffer.put((byte) (127 | b));
@@ -757,10 +757,10 @@ public abstract class WsRemoteEndpointIm
headerBuffer.put((byte) 0);
headerBuffer.put((byte) 0);
headerBuffer.put((byte) 0);
- headerBuffer.put((byte) (payload.limit() >>> 24));
- headerBuffer.put((byte) (payload.limit() >>> 16));
- headerBuffer.put((byte) (payload.limit() >>> 8));
- headerBuffer.put((byte) (payload.limit() & 0xFF));
+ headerBuffer.put((byte) (payload.remaining() >>> 24));
+ headerBuffer.put((byte) (payload.remaining() >>> 16));
+ headerBuffer.put((byte) (payload.remaining() >>> 8));
+ headerBuffer.put((byte) (payload.remaining() & 0xFF));
}
if (masked) {
headerBuffer.put(mask[0]);
Modified: tomcat/trunk/webapps/docs/changelog.xml
URL:
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1850400&r1=1850399&r2=1850400&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Fri Jan 4 16:22:34 2019
@@ -104,6 +104,14 @@
</fix>
</changelog>
</subsection>
+ <subsection name="WebSocket">
+ <changelog>
+ <fix>
+ <bug>63019</bug>: Use payload remaining bytes rather than limit when
+ writing. Submitted by Benoit Courtilly. (remm)
+ </fix>
+ </changelog>
+ </subsection>
<subsection name="Tribes">
<changelog>
<update>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]