summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbwarsaw2002-04-11 23:23:12 +0000
committerbwarsaw2002-04-11 23:23:12 +0000
commit00634f326e603e06fcbb05319873dcb57f918a09 (patch)
treef3010082893065d47f2493284e3fc6a0933182c5
parentb11e8f4d7a5bb6c196a6fb6f97f5a2600f85144c (diff)
downloadmailman-00634f326e603e06fcbb05319873dcb57f918a09.tar.gz
mailman-00634f326e603e06fcbb05319873dcb57f918a09.tar.zst
mailman-00634f326e603e06fcbb05319873dcb57f918a09.zip
-rw-r--r--Mailman/Cgi/confirm.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/Mailman/Cgi/confirm.py b/Mailman/Cgi/confirm.py
index 0dec993c8..4d9304a9a 100644
--- a/Mailman/Cgi/confirm.py
+++ b/Mailman/Cgi/confirm.py
@@ -123,7 +123,15 @@ def main():
elif cgidata.getvalue('submit'):
addrchange_confirm(mlist, doc, cookie)
else:
- addrchange_prompt(mlist, doc, cookie, *content[1:])
+ # Watch out for users who have unsubscribed themselves in the
+ # meantime!
+ try:
+ addrchange_prompt(mlist, doc, cookie, *content[1:])
+ except Errors.NotAMemberError:
+ doc.addError(_("""The address requesting to be changed has
+ been subsequently unsubscribed. This request has been
+ cancelled"""))
+ Pending.confirm(cookie, expunge=1)
elif content[0] == Pending.HELD_MESSAGE:
if cgidata.getvalue('cancel'):
heldmsg_cancel(mlist, doc, cookie)