Merge pull request #57 from jorgen-k/master

Fix SSL timeout error thansk to jorgen-k
This commit is contained in:
Roy Hyunjin Han 2014-11-26 22:43:16 -05:00
commit 9611d5d107
3 changed files with 21 additions and 21 deletions

View file

@ -9,7 +9,7 @@ CHANGES = open(os.path.join(here, 'CHANGES.rst')).read()
setup(
name='socketIO-client',
version='0.5.3',
version='0.5.3.2',
description='A socket.io client library',
long_description=README + '\n\n' + CHANGES,
license='MIT',

View file

@ -170,26 +170,23 @@ class SocketIO(object):
- Omit seconds, i.e. call wait() without arguments, to wait forever.
"""
try:
warning_screen = _yield_warning_screen(seconds)
for elapsed_time in warning_screen:
warning_screen = _yield_warning_screen(seconds)
for elapsed_time in warning_screen:
try:
try:
try:
self._process_events()
except TimeoutError:
pass
if self._stop_waiting(for_callbacks):
break
self.heartbeat_pacemaker.send(elapsed_time)
except ConnectionError as e:
try:
warning = Exception('[connection error] %s' % e)
warning_screen.throw(warning)
except StopIteration:
_log.warn(warning)
self.disconnect()
except KeyboardInterrupt:
pass
self._process_events()
except TimeoutError:
pass
if self._stop_waiting(for_callbacks):
break
self.heartbeat_pacemaker.send(elapsed_time)
except ConnectionError as e:
try:
warning = Exception('[connection error] %s' % e)
warning_screen.throw(warning)
except StopIteration:
_log.warn(warning)
self.disconnect()
def _process_events(self):
for packet in self._transport.recv_packet():

View file

@ -150,7 +150,10 @@ class _WebsocketTransport(_AbstractTransport):
except websocket.WebSocketTimeoutException as e:
raise TimeoutError(e)
except websocket.SSLError as e:
raise ConnectionError(e)
if e.message == "The read operation timed out":
raise TimeoutError(e)
else:
raise ConnectionError(e)
except websocket.WebSocketConnectionClosedException as e:
raise ConnectionError('connection closed (%s)' % e)
except socket.error as e: