Fixed #12147 -- Replaced use of try-except-finally to allow for Python 2.4 support. Thanks to knutin for the report.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@11721 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Russell Keith-Magee 2009-11-04 11:38:06 +00:00
parent dd5d7622a5
commit 90a9f81d37
1 changed files with 14 additions and 11 deletions

View File

@ -18,17 +18,20 @@ class EmailBackend(BaseEmailBackend):
return
self._lock.acquire()
try:
stream_created = self.open()
for message in email_messages:
self.stream.write('%s\n' % message.message().as_string())
self.stream.write('-'*79)
self.stream.write('\n')
self.stream.flush() # flush after each message
if stream_created:
self.close()
except:
if not self.fail_silently:
raise
# The try-except is nested to allow for
# Python 2.4 support (Refs #12147)
try:
stream_created = self.open()
for message in email_messages:
self.stream.write('%s\n' % message.message().as_string())
self.stream.write('-'*79)
self.stream.write('\n')
self.stream.flush() # flush after each message
if stream_created:
self.close()
except:
if not self.fail_silently:
raise
finally:
self._lock.release()
return len(email_messages)