mercurial/posix.py
changeset 30697 13d94304c8da
parent 30642 e995f00a9e9a
parent 30654 5f33116cd787
child 31491 492c64afc54c
--- a/mercurial/posix.py	Tue Jan 03 13:25:29 2017 +0100
+++ b/mercurial/posix.py	Wed Jan 04 14:52:59 2017 -0500
@@ -607,7 +607,14 @@
 
     In unsupported cases, it will raise a NotImplementedError"""
     try:
-        res = select.select(fds, fds, fds)
+        while True:
+            try:
+                res = select.select(fds, fds, fds)
+                break
+            except select.error as inst:
+                if inst.args[0] == errno.EINTR:
+                    continue
+                raise
     except ValueError: # out of range file descriptor
         raise NotImplementedError()
     return sorted(list(set(sum(res, []))))