summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
Diffstat (limited to 'django')
-rw-r--r--django/core/mail/backends/smtp.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/django/core/mail/backends/smtp.py b/django/core/mail/backends/smtp.py
index c7ba06cde2..1ee48269ae 100644
--- a/django/core/mail/backends/smtp.py
+++ b/django/core/mail/backends/smtp.py
@@ -130,12 +130,14 @@ class EmailBackend(BaseEmailBackend):
# Trying to send would be pointless.
return 0
num_sent = 0
- for message in email_messages:
- sent = self._send(message)
- if sent:
- num_sent += 1
- if new_conn_created:
- self.close()
+ try:
+ for message in email_messages:
+ sent = self._send(message)
+ if sent:
+ num_sent += 1
+ finally:
+ if new_conn_created:
+ self.close()
return num_sent
def _send(self, email_message):