imaplib: IMAP4 constructor closes the socket on error
Fix a ResourceWarning(unclosed socket) if an exception is raised in the constructor after the creation of the socket. Patch written by Nadeem Vawda.
This commit is contained in:
parent
a686725859
commit
33e649cf6d
|
@ -169,6 +169,17 @@ class IMAP4:
|
||||||
|
|
||||||
self.open(host, port)
|
self.open(host, port)
|
||||||
|
|
||||||
|
try:
|
||||||
|
self._connect()
|
||||||
|
except Exception:
|
||||||
|
try:
|
||||||
|
self.shutdown()
|
||||||
|
except socket.error:
|
||||||
|
pass
|
||||||
|
raise
|
||||||
|
|
||||||
|
|
||||||
|
def _connect(self):
|
||||||
# Create unique tag for this session,
|
# Create unique tag for this session,
|
||||||
# and compile tagged response matcher.
|
# and compile tagged response matcher.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue