diff options
author | Mark Sapiro <msapiro@value.net> | 2010-12-04 13:19:49 -0800 |
---|---|---|
committer | Mark Sapiro <msapiro@value.net> | 2010-12-04 13:19:49 -0800 |
commit | db33278a21b08a9f0f19963d133b5f0b878b3a1a (patch) | |
tree | 3a5c1311969ab328aad361a75808bd11e25d36a7 /Mailman | |
parent | 9483387a23b7dc01f33d95efcbc80e78e4b7479b (diff) | |
download | mailman2-db33278a21b08a9f0f19963d133b5f0b878b3a1a.tar.gz mailman2-db33278a21b08a9f0f19963d133b5f0b878b3a1a.tar.xz mailman2-db33278a21b08a9f0f19963d133b5f0b878b3a1a.zip |
- Fixed a problem where an emailed command in the Subject: header with a
non-ascii l10n of an 'Re:' prefix is ignored. Bug #685261.
- Fixed a problem with approving a post by email when the body of the
approval mail is base64 encoded. Bug #677115.
Diffstat (limited to 'Mailman')
-rw-r--r-- | Mailman/MailList.py | 6 | ||||
-rw-r--r-- | Mailman/Queue/CommandRunner.py | 5 |
2 files changed, 6 insertions, 5 deletions
diff --git a/Mailman/MailList.py b/Mailman/MailList.py index 45ce6f09..a7efd986 100644 --- a/Mailman/MailList.py +++ b/Mailman/MailList.py @@ -1258,7 +1258,7 @@ class MailList(HTMLFormatter, Deliverer, ListAdmin, except IndexError: subpart = None if subpart: - s = StringIO(subpart.get_payload()) + s = StringIO(subpart.get_payload(decode=True)) while True: line = s.readline() if not line: @@ -1267,8 +1267,8 @@ class MailList(HTMLFormatter, Deliverer, ListAdmin, continue i = line.find(':') if i > 0: - if (line[:i].lower() == 'approve' or - line[:i].lower() == 'approved'): + if (line[:i].strip().lower() == 'approve' or + line[:i].strip().lower() == 'approved'): # then approved = line[i+1:].strip() break diff --git a/Mailman/Queue/CommandRunner.py b/Mailman/Queue/CommandRunner.py index 86d4a46c..3155f22f 100644 --- a/Mailman/Queue/CommandRunner.py +++ b/Mailman/Queue/CommandRunner.py @@ -1,4 +1,4 @@ -# Copyright (C) 1998-2009 by the Free Software Foundation, Inc. +# Copyright (C) 1998-2010 by the Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -76,7 +76,8 @@ class Results: try: subj = make_header(decode_header(subj)).__unicode__() # TK: Currently we don't allow 8bit or multibyte in mail command. - subj = subj.encode('us-ascii') + # MAS: However, an l10n 'Re:' may contain non-ascii so ignore it. + subj = subj.encode('us-ascii', 'ignore') # Always process the Subject: header first self.commands.append(subj) except (HeaderParseError, UnicodeError, LookupError): |