diff --git a/addons/mail/models/fetchmail.py b/addons/mail/models/fetchmail.py index 25a11b1a940..c3ba19c8ddd 100644 --- a/addons/mail/models/fetchmail.py +++ b/addons/mail/models/fetchmail.py @@ -220,8 +220,11 @@ odoo_mailgate: "|/path/to/odoo-mailgate.py --host=localhost -u %(uid)d -p PASSWO _logger.info("General failure when trying to fetch mail from %s server %s.", server.server_type, server.name, exc_info=True) finally: if imap_server: - imap_server.close() - imap_server.logout() + try: + imap_server.close() + imap_server.logout() + except OSError: + _logger.warning('Failed to properly finish imap connection: %s.', server.name, exc_info=True) elif connection_type == 'pop': try: while True: @@ -251,7 +254,10 @@ odoo_mailgate: "|/path/to/odoo-mailgate.py --host=localhost -u %(uid)d -p PASSWO _logger.info("General failure when trying to fetch mail from %s server %s.", server.server_type, server.name, exc_info=True) finally: if pop_server: - pop_server.quit() + try: + pop_server.quit() + except OSError: + _logger.warning('Failed to properly finish pop connection: %s.', server.name, exc_info=True) server.write({'date': fields.Datetime.now()}) return True