diff options
| author | liris <liris.pp@gmail.com> | 2019-03-21 10:20:13 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-03-21 10:20:13 +0900 |
| commit | 8e7140219de90d2353a2eed11968c3aaf03793f3 (patch) | |
| tree | 5978d19cc85063a172548b19d2916e7211241feb | |
| parent | 66081be8e0523c9dfaffcb18ba1c8e4765e2288e (diff) | |
| parent | a13b6542a832e71c8635adf3cb8b0e236e8ca83c (diff) | |
| download | websocket-client-8e7140219de90d2353a2eed11968c3aaf03793f3.tar.gz | |
Merge pull request #536 from trygveaa:dont-retry-sockets-with-timeout-0
Don't retry sockets with timeout set to 0
| -rw-r--r-- | websocket/_socket.py | 10 | ||||
| -rw-r--r-- | websocket/tests/test_websocket.py | 3 |
2 files changed, 11 insertions, 2 deletions
diff --git a/websocket/_socket.py b/websocket/_socket.py index d811c21..7be3913 100644 --- a/websocket/_socket.py +++ b/websocket/_socket.py @@ -96,7 +96,10 @@ def recv(sock, bufsize): return sock.recv(bufsize) try: - bytes_ = _recv() + if sock.gettimeout() == 0: + bytes_ = sock.recv(bufsize) + else: + bytes_ = _recv() except socket.timeout as e: message = extract_err_message(e) raise WebSocketTimeoutException(message) @@ -148,7 +151,10 @@ def send(sock, data): return sock.send(data) try: - return _send() + if sock.gettimeout() == 0: + return sock.send(data) + else: + return _send() except socket.timeout as e: message = extract_err_message(e) raise WebSocketTimeoutException(message) diff --git a/websocket/tests/test_websocket.py b/websocket/tests/test_websocket.py index f49a893..8b131bb 100644 --- a/websocket/tests/test_websocket.py +++ b/websocket/tests/test_websocket.py @@ -55,6 +55,9 @@ class SockMock(object): def add_packet(self, data): self.data.append(data) + def gettimeout(self): + return None + def recv(self, bufsize): if self.data: e = self.data.pop(0) |
