Update of /cvsroot/mailman/mailman/Mailman/Cgi
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3402
Modified Files:
Tag: Release_2_1-maint
options.py
Log Message:
main(): The list lock must be held in order to pend unsubscription requests.
Index: options.py
===================================================================
RCS file: /cvsroot/mailman/mailman/Mailman/Cgi/options.py,v
retrieving revision 2.40.2.4
retrieving revision 2.40.2.5
diff -u -d -r2.40.2.4 -r2.40.2.5
--- options.py 17 Feb 2004 19:18:06 -0000 2.40.2.4
+++ options.py 29 Feb 2004 16:45:27 -0000 2.40.2.5
@@ -163,22 +163,23 @@
# Because they can't supply a password for unsubscribing, we'll need
# to do the confirmation dance.
if mlist.isMember(user):
- # If unsubs require admin approval, then this request has to be
- # held. Otherwise, send a confirmation.
- if mlist.unsubscribe_policy:
- try:
- mlist.Lock()
+ # We must acquire the list lock in order to pend a request.
+ try:
+ mlist.Lock()
+ # If unsubs require admin approval, then this request has to
+ # be held. Otherwise, send a confirmation.
+ if mlist.unsubscribe_policy:
mlist.HoldUnsubscription(user)
doc.addError(_("""Your unsubscription request has been
forwarded to the list administrator for approval."""),
tag='')
- mlist.Save()
- finally:
- mlist.Unlock()
- else:
- mlist.ConfirmUnsubscription(user, userlang)
- doc.addError(_('The confirmation email has been sent.'),
- tag='')
+ else:
+ mlist.ConfirmUnsubscription(user, userlang)
+ doc.addError(_('The confirmation email has been sent.'),
+ tag='')
+ mlist.Save()
+ finally:
+ mlist.Unlock()
else:
# Not a member
if mlist.private_roster == 0:
_______________________________________________
Mailman-checkins mailing list
[EMAIL PROTECTED]
Unsubscribe: http://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org