diff options
author | Mark Sapiro <mark@msapiro.net> | 2015-12-06 12:00:29 -0800 |
---|---|---|
committer | Mark Sapiro <mark@msapiro.net> | 2015-12-06 12:00:29 -0800 |
commit | 4e967acf9b45a6a6d24bc3d84c6d40f6dcffc1e8 (patch) | |
tree | 5965453323ff012e09e39e0edccce0b2b14cf73d | |
parent | cd1fa627777ef91aeae0a10099c3f80b8dd53eae (diff) | |
download | mailman2-4e967acf9b45a6a6d24bc3d84c6d40f6dcffc1e8.tar.gz mailman2-4e967acf9b45a6a6d24bc3d84c6d40f6dcffc1e8.tar.xz mailman2-4e967acf9b45a6a6d24bc3d84c6d40f6dcffc1e8.zip |
Submitting the user options form for a user who was asynchronously
unsubscribed would throw an uncaught NotAMemberError.
-rw-r--r-- | Mailman/Cgi/options.py | 8 | ||||
-rwxr-xr-x | NEWS | 3 |
2 files changed, 11 insertions, 0 deletions
diff --git a/Mailman/Cgi/options.py b/Mailman/Cgi/options.py index 7b2c70b5..cdc2bef3 100644 --- a/Mailman/Cgi/options.py +++ b/Mailman/Cgi/options.py @@ -297,6 +297,14 @@ def main(): # options. The first set of checks does not require the list to be # locked. + # However, if a form is submitted for a user who has been asynchronously + # unsubscribed, uncaught NotAMemberError exceptions can be thrown. + + if not mlist.isMember(user): + loginpage(mlist, doc, user, language) + print doc.Format() + return + if cgidata.has_key('logout'): print mlist.ZapCookie(mm_cfg.AuthUser, user) loginpage(mlist, doc, user, language) @@ -22,6 +22,9 @@ Here is a history of user visible changes to Mailman. Bug fixes and other patches + - Submitting the user options form for a user who was asynchronously + unsubscribed would throw an uncaught NotAMemberError. (LP: #1523273) + - It was possible under some circumstances for a message to be shunted after a handler rejected or discarded it, and the handler would be skipped upon unshunting and the message accepted. (LP: #1519062) |