summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Martin <jmartin@sentryds.com>2010-06-24 17:22:23 -0500
committerJoel Martin <jmartin@sentryds.com>2010-06-24 17:22:23 -0500
commit79e646611ba35f38060b3dd42fbfcfaeb92253ee (patch)
tree602fd2a5472e639b9e66b6664026158633f9e70e
parent758bab61d114ec26decc2f26924f55d5741a90b4 (diff)
downloadweb-socket-js-79e646611ba35f38060b3dd42fbfcfaeb92253ee.tar.gz
Remove invalid check of 'pos'.
This check causes the new (hixie-76) WebSockets protocol check to hang.
-rw-r--r--flash-src/WebSocket.as25
1 files changed, 12 insertions, 13 deletions
diff --git a/flash-src/WebSocket.as b/flash-src/WebSocket.as
index 75083d7..b066fff 100644
--- a/flash-src/WebSocket.as
+++ b/flash-src/WebSocket.as
@@ -155,6 +155,7 @@ public class WebSocket extends EventDispatcher {
main.log("request header:\n" + req);
socket.writeUTFBytes(req);
main.log("sent key3: " + key3);
+ main.log("expected digest: " + expectedDigest);
writeBytes(key3);
socket.flush();
}
@@ -218,20 +219,18 @@ public class WebSocket extends EventDispatcher {
pos = -1;
}
} else if (headerState == 4) {
- if (pos == 15) {
- var replyDigest:String = readBytes(buffer, 16);
- main.log("reply digest: " + replyDigest);
- if (replyDigest != expectedDigest) {
- onError("digest doesn't match: " + replyDigest + " != " + expectedDigest);
- return;
- }
- headerState = 5;
- makeBufferCompact();
- pos = -1;
- readyState = OPEN;
- notifyStateChange();
- dispatchEvent(new Event("open"));
+ var replyDigest:String = readBytes(buffer, 16);
+ main.log("reply digest: " + replyDigest);
+ if (replyDigest != expectedDigest) {
+ onError("digest doesn't match: " + replyDigest + " != " + expectedDigest);
+ return;
}
+ headerState = 5;
+ makeBufferCompact();
+ pos = -1;
+ readyState = OPEN;
+ notifyStateChange();
+ dispatchEvent(new Event("open"));
} else {
if (buffer[pos] == 0xff) {
if (buffer.readByte() != 0x00) {