summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorliris <liris.pp@gmail.com>2014-05-26 07:49:56 +0900
committerliris <liris.pp@gmail.com>2014-05-26 07:49:56 +0900
commit0eda6e3afb64735854fe02d50b415156bf08af4d (patch)
tree40b9fbb7a807898d7a5b5b77407572290aab9dd7
parent99c8cf45dd34a8c7974ed39efadd642b69c692ab (diff)
downloadwebsocket-client-0eda6e3afb64735854fe02d50b415156bf08af4d.tar.gz
- fixed #84
-rw-r--r--README.rst4
-rw-r--r--setup.py2
-rw-r--r--tests/test_websocket.py2
-rw-r--r--websocket/__init__.py5
4 files changed, 10 insertions, 3 deletions
diff --git a/README.rst b/README.rst
index 5e7e6cc..1c56326 100644
--- a/README.rst
+++ b/README.rst
@@ -143,6 +143,10 @@ example::
ChangeLog
============
+- v0.15.0
+
+ - fixed exception when send a large message (#84)
+
- v0.14.1
- fixed to work on Python2.6 (#83)
diff --git a/setup.py b/setup.py
index 33dfb16..7bba410 100644
--- a/setup.py
+++ b/setup.py
@@ -1,7 +1,7 @@
from setuptools import setup
import sys
-VERSION = "0.14.1"
+VERSION = "0.15.0"
install_requires = ["six"]
if sys.version_info[0] == 2:
diff --git a/tests/test_websocket.py b/tests/test_websocket.py
index 94b1cb7..671ffd6 100644
--- a/tests/test_websocket.py
+++ b/tests/test_websocket.py
@@ -223,6 +223,8 @@ class WebSocketTest(unittest.TestCase):
sock.send(u"こんにちは")
self.assertEqual(s.sent[1], six.b("\x81\x8fabcd\x82\xe3\xf0\x87\xe3\xf1\x80\xe5\xca\x81\xe2\xc5\x82\xe3\xcc"))
+ sock.send("x" * 127)
+
def testRecv(self):
# TODO: add longer frame data
sock = ws.WebSocket()
diff --git a/websocket/__init__.py b/websocket/__init__.py
index 77ba46c..fa14e5a 100644
--- a/websocket/__init__.py
+++ b/websocket/__init__.py
@@ -335,15 +335,16 @@ class ABNF(object):
| self.opcode)
if length < ABNF.LENGTH_7:
frame_header += chr(self.mask << 7 | length)
+ frame_header = six.b(frame_header)
elif length < ABNF.LENGTH_16:
frame_header += chr(self.mask << 7 | 0x7e)
+ frame_header = six.b(frame_header)
frame_header += struct.pack("!H", length)
else:
frame_header += chr(self.mask << 7 | 0x7f)
+ frame_header = six.b(frame_header)
frame_header += struct.pack("!Q", length)
- frame_header = six.b(frame_header)
-
if not self.mask:
return frame_header + self.data
else: