summaryrefslogtreecommitdiffstats
path: root/apps/patchwork/models.py
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2009-09-30 17:18:05 +1000
committerJeremy Kerr <jk@ozlabs.org>2009-09-30 17:26:49 +1000
commit6c013e7e3d170fd58d3e3e19406ff16d019909c4 (patch)
tree80e4430a88132fb07f114e5caa299fa4edde1e3f /apps/patchwork/models.py
parent9b312e325e4fba329b062efe1013d67e83815785 (diff)
downloadpatchwork-6c013e7e3d170fd58d3e3e19406ff16d019909c4.tar.bz2
patchwork-6c013e7e3d170fd58d3e3e19406ff16d019909c4.tar.xz
Copy headers from original mail into patch mbox output
Preserve the Cc and To headers in the mbox output by parsing the saved original headers, and adding them to the mail object. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'apps/patchwork/models.py')
-rw-r--r--apps/patchwork/models.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/apps/patchwork/models.py b/apps/patchwork/models.py
index 75dc041..70003e0 100644
--- a/apps/patchwork/models.py
+++ b/apps/patchwork/models.py
@@ -32,6 +32,7 @@ import random
try:
from email.mime.nonmultipart import MIMENonMultipart
from email.encoders import encode_7or8bit
+ from email.parser import HeaderParser
import email.utils
except ImportError:
# Python 2.4 compatibility
@@ -269,8 +270,14 @@ class Patch(models.Model):
mail['Message-Id'] = self.msgid
mail.set_unixfrom('From patchwork ' + self.date.ctime())
- return mail
+ copied_headers = ['To', 'Cc']
+ orig_headers = HeaderParser().parsestr(str(self.headers))
+ for header in copied_headers:
+ if header in orig_headers:
+ mail[header] = orig_headers[header]
+
+ return mail
@models.permalink
def get_absolute_url(self):