diff options
author | pazz <patricktotzke@gmail.com> | 2011-07-30 13:55:55 +0100 |
---|---|---|
committer | pazz <patricktotzke@gmail.com> | 2011-07-30 13:55:55 +0100 |
commit | cb5413c9bf08674bae10641f764a2ad6ac4262f6 (patch) | |
tree | 7d2eb99801d2f93c020c82156359654031555c2e | |
parent | 6a98a65efc69e8b49195faff9b5e455dc45f29aa (diff) |
maxlength in reply headers
-rw-r--r-- | alot/command.py | 18 | ||||
-rw-r--r-- | alot/message.py | 8 |
2 files changed, 15 insertions, 11 deletions
diff --git a/alot/command.py b/alot/command.py index dbf6cee2..098b5b93 100644 --- a/alot/command.py +++ b/alot/command.py @@ -505,16 +505,20 @@ class ReplyCommand(Command): if self.groupreply: cleared = self.clear_my_address(my_addresses, mail['To']) if cleared: - reply['To'] = mail['From'] + ', ' + cleared + logging.info(mail['From'] + ', ' + cleared) + reply['To'] = encode_header('To', mail['From'] + ', ' + cleared) + logging.info(reply['To']) else: - reply['To'] = mail['From'] + reply['To'] = encode_header('To', mail['From']) # copy cc and bcc for group-replies if 'Cc' in mail: - reply['Cc'] = self.clear_my_address(my_addresses, mail['Cc']) + cc = self.clear_my_address(my_addresses, mail['Cc']) + reply['Cc'] = encode_header('Cc', cc) if 'Bcc' in mail: - reply['Bcc'] = self.clear_my_address(my_addresses, mail['Bcc']) + bcc = self.clear_my_address(my_addresses, mail['Bcc']) + reply['Bcc'] = encode_header('Bcc', bcc) else: - reply['To'] = mail['From'] + reply['To'] = encode_header('To', mail['From']) # set In-Reply-To header del(reply['In-Reply-To']) @@ -536,8 +540,8 @@ class ReplyCommand(Command): new_value = [] for entry in value.split(','): if not [a for a in my_addresses if a in entry]: - new_value.append(entry) - return ','.join(new_value) + new_value.append(entry.strip()) + return ', '.join(new_value) class BounceMailCommand(Command): diff --git a/alot/message.py b/alot/message.py index 53932360..2930dbde 100644 --- a/alot/message.py +++ b/alot/message.py @@ -222,15 +222,15 @@ def encode_header(key, value): if m: name, address = m.groups() header = Header(name + ' ', 'utf-8') - header.append('<%s>' % address) + header.append('<%s>' % address, charset='ascii') encodedentries.append(header.encode()) else: encodedentries.append(entry.encode('ascii', errors='replace')) - value = ','.join(encodedentries) + value = Header(','.join(encodedentries)) elif key.lower() == 'subject': - value = Header(value, 'UTF-8').encode() + value = Header(value, 'UTF-8') else: - value = value.encode('ascii', errors='replace') + value = Header(value.encode('ascii', errors='replace')) return value class Attachment: |