From 45ca48b03d08cdc9959e0577bc84b845931112f6 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 31 Mar 2015 12:10:33 +0200 Subject: Issue #23485: select.devpoll.poll() is now retried when interrupted by a signal --- Lib/selectors.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'Lib/selectors.py') diff --git a/Lib/selectors.py b/Lib/selectors.py index a3f2e78c24f..44a61508feb 100644 --- a/Lib/selectors.py +++ b/Lib/selectors.py @@ -479,11 +479,10 @@ if hasattr(select, 'devpoll'): # devpoll() has a resolution of 1 millisecond, round away from # zero to wait *at least* timeout seconds. timeout = math.ceil(timeout * 1e3) + + fd_event_list = self._devpoll.poll(timeout) + ready = [] - try: - fd_event_list = self._devpoll.poll(timeout) - except InterruptedError: - return ready for fd, event in fd_event_list: events = 0 if event & ~select.POLLIN: -- cgit v1.2.3