From b5f4ab7987d3239e40219953f7e395649dcebeb9 Mon Sep 17 00:00:00 2001 From: Hiroshi Ichikawa Date: Tue, 4 Dec 2012 10:21:51 +0900 Subject: Fixing a bug that it required whitespace after colon in the header. #126 --- WebSocketMain.swf | Bin 177129 -> 177139 bytes WebSocketMainInsecure.zip | Bin 170264 -> 170391 bytes flash-src/src/net/gimite/websocket/WebSocket.as | 8 +++++--- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/WebSocketMain.swf b/WebSocketMain.swf index b7b4e7b..f286c81 100644 Binary files a/WebSocketMain.swf and b/WebSocketMain.swf differ diff --git a/WebSocketMainInsecure.zip b/WebSocketMainInsecure.zip index 26d15a5..5a02d72 100644 Binary files a/WebSocketMainInsecure.zip and b/WebSocketMainInsecure.zip differ diff --git a/flash-src/src/net/gimite/websocket/WebSocket.as b/flash-src/src/net/gimite/websocket/WebSocket.as index 0f32017..dcde61b 100644 --- a/flash-src/src/net/gimite/websocket/WebSocket.as +++ b/flash-src/src/net/gimite/websocket/WebSocket.as @@ -382,13 +382,15 @@ public class WebSocket extends EventDispatcher { var lowerHeader:Object = {}; for (var i:int = 1; i < lines.length; ++i) { if (lines[i].length == 0) continue; - var m:Array = lines[i].match(/^(\S+): (.*)$/); + var m:Array = lines[i].match(/^(\S+):(.*)$/); if (!m) { onConnectionError("failed to parse response header line: " + lines[i]); return false; } - header[m[1].toLowerCase()] = m[2]; - lowerHeader[m[1].toLowerCase()] = m[2].toLowerCase(); + var key:String = m[1].toLowerCase(); + var value:String = StringUtil.trim(m[2]); + header[key] = value; + lowerHeader[key] = value.toLowerCase(); } if (lowerHeader["upgrade"] != "websocket") { onConnectionError("invalid Upgrade: " + header["Upgrade"]); -- cgit v1.2.1