Issue #23485: select.poll.poll() is now retried when interrupted by a signal
diff --git a/Lib/asyncore.py b/Lib/asyncore.py
index 5578dda..3b51f0f 100644
--- a/Lib/asyncore.py
+++ b/Lib/asyncore.py
@@ -179,10 +179,8 @@
                 flags |= select.POLLOUT
             if flags:
                 pollster.register(fd, flags)
-        try:
-            r = pollster.poll(timeout)
-        except InterruptedError:
-            r = []
+
+        r = pollster.poll(timeout)
         for fd, flags in r:
             obj = map.get(fd)
             if obj is None: