From 32be03b69487f68076387a4629c08984177ed6e9 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 5 Jun 2015 14:18:21 +0530 Subject: [PATCH] ... --- src/calibre/srv/loop.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/calibre/srv/loop.py b/src/calibre/srv/loop.py index 73713a1b80..93b773a046 100644 --- a/src/calibre/srv/loop.py +++ b/src/calibre/srv/loop.py @@ -455,13 +455,15 @@ class ServerLoop(object): self.log.error('Listening socket was unexpectedly terminated') return except (select.error, socket.error) as e: - if e.errno in socket_errors_eintr: + # select.error has no errno attribute. errno is instead + # e.args[0] + if getattr(e, 'errno', e.args[0]) in socket_errors_eintr: return for s, conn in tuple(self.connection_map.iteritems()): try: select.select([s], [], [], 0) - except (select.error, socket.error): - if e.errno not in socket_errors_eintr: + except (select.error, socket.error) as e: + if getattr(e, 'errno', e.args[0]) not in socket_errors_eintr: self.close(s, conn) # Bad socket, discard return