diff options
Diffstat (limited to 'Lib/imaplib.py')
-rw-r--r-- | Lib/imaplib.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Lib/imaplib.py b/Lib/imaplib.py index c8f32a7b60..357ba83891 100644 --- a/Lib/imaplib.py +++ b/Lib/imaplib.py @@ -884,14 +884,17 @@ class IMAP4: def _command_complete(self, name, tag): - self._check_bye() + # BYE is expected after LOGOUT + if name != 'LOGOUT': + self._check_bye() try: typ, data = self._get_tagged_response(tag) except self.abort, val: raise self.abort('command: %s => %s' % (name, val)) except self.error, val: raise self.error('command: %s => %s' % (name, val)) - self._check_bye() + if name != 'LOGOUT': + self._check_bye() if typ == 'BAD': raise self.error('%s command error: %s %s' % (name, typ, data)) return typ, data |