From 2fc0062f0d9581fec0013b4da9470551291d4084 Mon Sep 17 00:00:00 2001 From: bwarsaw Date: Wed, 6 Mar 2002 13:48:28 +0000 Subject: change_options(): When updating a member's options, take care to ignore members that may have been deleted via other means during page hits. --- Mailman/Cgi/admin.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Mailman/Cgi/admin.py b/Mailman/Cgi/admin.py index fa8065699..ba9409937 100644 --- a/Mailman/Cgi/admin.py +++ b/Mailman/Cgi/admin.py @@ -1305,14 +1305,18 @@ def change_options(mlist, category, subcat, cgidata, doc): except Errors.MMNoSuchUserError: errors.append((user, _('Not subscribed'))) continue + if not mlist.isMember(user): + doc.addError(_('Ignoring changes to deleted member: %(user)s'), + tag=_('Warning: ')) + continue value = cgidata.has_key('%s_digest' % user) try: mlist.setMemberOption(user, mm_cfg.Digests, value) - except (Errors.NotAMemberError, - Errors.AlreadyReceivingDigests, + except (Errors.AlreadyReceivingDigests, Errors.AlreadyReceivingRegularDeliveries, Errors.CantDigestError, Errors.MustDigestError): + # BAW: Hmm... pass newname = cgidata.getvalue(user+'_realname', '') -- cgit v1.2.3-70-g09d2