Author: markt
Date: Tue Oct 8 22:34:19 2013
New Revision: 1530451
URL: http://svn.apache.org/r1530451
Log:
Fix infinite loop issue triggered by the test case for BZ 55638
Modified:
tomcat/tc7.0.x/trunk/ (props changed)
tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java
Propchange: tomcat/tc7.0.x/trunk/
------------------------------------------------------------------------------
Merged /tomcat/trunk:r1530421,1530423,1530445
Modified: tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java
URL:
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java?rev=1530451&r1=1530450&r2=1530451&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java
(original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsFrameBase.java Tue
Oct 8 22:34:19 2013
@@ -97,7 +97,6 @@ public abstract class WsFrameBase {
protected void processInputBuffer() throws IOException {
while (true) {
wsSession.updateLastActive();
-
if (state == State.NEW_FRAME) {
if (!processInitialHeader()) {
break;
@@ -266,14 +265,16 @@ public abstract class WsFrameBase {
private boolean processData() throws IOException {
- checkRoomPayload();
+ boolean result;
if (Util.isControl(opCode)) {
- return processDataControl();
+ result = processDataControl();
} else if (textMessage) {
- return processDataText();
+ result = processDataText();
} else {
- return processDataBinary();
+ result = processDataBinary();
}
+ checkRoomPayload();
+ return result;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]