diff options
-rwxr-xr-x | NEWS | 2 | ||||
-rwxr-xr-x | bin/sync_members | 6 |
2 files changed, 7 insertions, 1 deletions
@@ -9,6 +9,8 @@ Here is a history of user visible changes to Mailman. Bug Fixes and other patches + - Fixed a possible UnicodeDecodeError in bin/sync_members. (LP: #1243343) + - Fixed Makefile to not include $DESTDIR in paths compiled into .pyc files for traceback purposes. (LP: #1241770) diff --git a/bin/sync_members b/bin/sync_members index 13d0b2b0..58262841 100755 --- a/bin/sync_members +++ b/bin/sync_members @@ -1,6 +1,6 @@ #! @PYTHON@ # -# Copyright (C) 1998-2003 by the Free Software Foundation, Inc. +# Copyright (C) 1998-2013 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 @@ -256,6 +256,8 @@ def main(): try: if not dryrun: mlist.ApprovedAddMember(userdesc, welcome, notifyadmin) + # Avoid UnicodeError if name can't be decoded + name = unicode(name, errors='replace').encode(enc, 'replace') s = email.Utils.formataddr((name, addr)).encode(enc, 'replace') print _('Added : %(s)s') except Errors.MMAlreadyAMember: @@ -276,6 +278,8 @@ def main(): # reasons is in the database. Use a lower level remove to # get rid of this member's entry mlist.removeMember(addr) + # Avoid UnicodeError if name can't be decoded + name = unicode(name, errors='replace').encode(enc, 'replace') s = email.Utils.formataddr((name, addr)).encode(enc, 'replace') print _('Removed: %(s)s') |