]> granicus.if.org Git - python/commitdiff
Issue #12039: Now suppress spurious select.error raised on FreeBSD when the server...
authorVinay Sajip <vinay_sajip@yahoo.co.uk>
Tue, 10 May 2011 06:48:28 +0000 (07:48 +0100)
committerVinay Sajip <vinay_sajip@yahoo.co.uk>
Tue, 10 May 2011 06:48:28 +0000 (07:48 +0100)
Lib/test/test_logging.py

index 07bb46a0a706a9b97368be9ae7f1d2767f2c39f6..1768e8b36db6e8b8ca10e0b6ada91d2e30e80c73 100644 (file)
@@ -723,7 +723,14 @@ class TestSMTPServer(smtpd.SMTPServer):
                               :func:`select` or :func:`poll` call by
                               :func:`asyncore.loop`.
         """
-        asyncore.loop(poll_interval, map=self.sockmap)
+        try:
+            asyncore.loop(poll_interval, map=self.sockmap)
+        except select.error:
+            # On FreeBSD 8, closing the server repeatably
+            # raises this error. We swallow it if the
+            # server has been closed.
+            if self.connected or self.accepting:
+                raise
 
     def stop(self, timeout=None):
         """