# HG changeset patch # User Nicolas Dumazet # Date 2009-06-13 15:39:01 # Node ID 5d8021ac0e1917370de9ade65749540fe00c965c # Parent 9aca76502280cae6182dde0c8855da7a7e117849 inotify: raise QueryFailed when the server crash When the server crashes, it does not write back on the socket. The message which is then read from the socket is '', which raises a TypeError. Catching TypeError to raise QueryFailed instead. diff --git a/hgext/inotify/client.py b/hgext/inotify/client.py --- a/hgext/inotify/client.py +++ b/hgext/inotify/client.py @@ -91,7 +91,13 @@ class client(object): Raises QueryFailed on error """ cs = common.recvcs(self.sock) - version = ord(cs.read(1)) + try: + version = ord(cs.read(1)) + except TypeError: + # empty answer, assume the server crashed + self.ui.warn(_('received empty answer from inotify server')) + raise QueryFailed('server crashed') + if version != common.version: self.ui.warn(_('(inotify: received response from incompatible ' 'server version %d)\n') % version)