##// END OF EJS Templates
commandserver: do not handle EINTR for selector.select...
Jun Wu -
r33543:3ef3bf70 default
parent child Browse files
Show More
@@ -11,7 +11,6 b' import errno'
11 import gc
11 import gc
12 import os
12 import os
13 import random
13 import random
14 import select
15 import signal
14 import signal
16 import socket
15 import socket
17 import struct
16 import struct
@@ -488,15 +487,15 b' class unixforkingservice(object):'
488 # waiting for recv() will receive ECONNRESET.
487 # waiting for recv() will receive ECONNRESET.
489 self._unlinksocket()
488 self._unlinksocket()
490 exiting = True
489 exiting = True
491 try:
492 ready = selector.select(timeout=h.pollinterval)
490 ready = selector.select(timeout=h.pollinterval)
493 if not ready:
491 if not ready:
494 # only exit if we completed all queued requests
492 # only exit if we completed all queued requests
495 if exiting:
493 if exiting:
496 break
494 break
497 continue
495 continue
496 try:
498 conn, _addr = self._sock.accept()
497 conn, _addr = self._sock.accept()
499 except (select.error, socket.error) as inst:
498 except socket.error as inst:
500 if inst.args[0] == errno.EINTR:
499 if inst.args[0] == errno.EINTR:
501 continue
500 continue
502 raise
501 raise
General Comments 0
You need to be logged in to leave comments. Login now