diff options
author | Senthil Kumaran <senthil@uthcode.com> | 2011-06-26 13:45:17 -0700 |
---|---|---|
committer | Senthil Kumaran <senthil@uthcode.com> | 2011-06-26 13:45:17 -0700 |
commit | e4ef72687972a6e1aedafeb1a5f7de1dd4b5756d (patch) | |
tree | d1c7f5d602dc74f6c1972c592902e43eef7608fb /Lib/ftplib.py | |
parent | 460153013756e565d8bcfcdab50f19c90d4ca269 (diff) | |
download | cpython-git-e4ef72687972a6e1aedafeb1a5f7de1dd4b5756d.tar.gz |
Fix closes issue1067702 The problem with close multiple ftp transfers were due cases where sockets/file were not closed immediately. Tightned those cases and failure is no longer observed.
Diffstat (limited to 'Lib/ftplib.py')
-rw-r--r-- | Lib/ftplib.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/Lib/ftplib.py b/Lib/ftplib.py index 72d31a15e3..8713e473a1 100644 --- a/Lib/ftplib.py +++ b/Lib/ftplib.py @@ -351,6 +351,7 @@ class FTP: conn, sockaddr = sock.accept() if self.timeout is not _GLOBAL_DEFAULT_TIMEOUT: conn.settimeout(self.timeout) + sock.close() if resp[:3] == '150': # this is conditional in case we received a 125 size = parse150(resp) @@ -575,11 +576,11 @@ class FTP: def close(self): '''Close the connection without assuming anything about it.''' - if self.file: + if self.file is not None: self.file.close() + if self.sock is not None: self.sock.close() - self.file = self.sock = None - + self.file = self.sock = None try: import ssl |