[Python-checkins] r86393 - in python/branches/release27-maint: Lib/imaplib.py
antoine.pitrou
python-checkins at python.org
Wed Nov 10 10:02:33 CET 2010
Author: antoine.pitrou
Date: Wed Nov 10 10:02:33 2010
New Revision: 86393
Log:
Merged revisions 86391 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r86391 | antoine.pitrou | 2010-11-10 09:59:25 +0100 (mer., 10 nov. 2010) | 4 lines
Followup to r86383: it seems that in some cases (buildbots), the server
closes the connection before we can call shutdown().
........
Modified:
python/branches/release27-maint/ (props changed)
python/branches/release27-maint/Lib/imaplib.py
Modified: python/branches/release27-maint/Lib/imaplib.py
==============================================================================
--- python/branches/release27-maint/Lib/imaplib.py (original)
+++ python/branches/release27-maint/Lib/imaplib.py Wed Nov 10 10:02:33 2010
@@ -22,7 +22,7 @@
__version__ = "2.58"
-import binascii, random, re, socket, subprocess, sys, time
+import binascii, errno, random, re, socket, subprocess, sys, time
__all__ = ["IMAP4", "IMAP4_stream", "Internaldate2tuple",
"Int2AP", "ParseFlags", "Time2Internaldate"]
@@ -248,8 +248,14 @@
def shutdown(self):
"""Close I/O established in "open"."""
self.file.close()
- self.sock.shutdown(socket.SHUT_RDWR)
- self.sock.close()
+ try:
+ self.sock.shutdown(socket.SHUT_RDWR)
+ except socket.error as e:
+ # The server might already have closed the connection
+ if e.errno != errno.ENOTCONN:
+ raise
+ finally:
+ self.sock.close()
def socket(self):
More information about the Python-checkins
mailing list