summaryrefslogtreecommitdiff
path: root/Mailman/Cgi/handle_opts.py
diff options
context:
space:
mode:
authorbwarsaw2000-06-01 15:29:33 +0000
committerbwarsaw2000-06-01 15:29:33 +0000
commit3765eec5bbff791f73db77d2fb757b030fcbf1fb (patch)
tree4a365bf3844d18af13ac9164504f4cec39442561 /Mailman/Cgi/handle_opts.py
parent9deac814fb00136596d392d38da7b53bc083291c (diff)
downloadmailman-3765eec5bbff791f73db77d2fb757b030fcbf1fb.tar.gz
mailman-3765eec5bbff791f73db77d2fb757b030fcbf1fb.tar.zst
mailman-3765eec5bbff791f73db77d2fb757b030fcbf1fb.zip
process_form(): When listing a user's other subscriptions, don't use
map_maillists() -- which has been removed anyway -- because the locking semantics interacted poorly. optionslinks() has been modified to take a listname instead of a MailList object, and it opens the list unlocked. Good ol' built-in map() is used now instead.
Diffstat (limited to 'Mailman/Cgi/handle_opts.py')
-rw-r--r--Mailman/Cgi/handle_opts.py17
1 files changed, 9 insertions, 8 deletions
diff --git a/Mailman/Cgi/handle_opts.py b/Mailman/Cgi/handle_opts.py
index a28e687b7..afaa32da4 100644
--- a/Mailman/Cgi/handle_opts.py
+++ b/Mailman/Cgi/handle_opts.py
@@ -153,18 +153,19 @@ def process_form(mlist, user, doc):
doc.AddItem("Click a link to visit your options page for"
" that mailing list:")
- def optionslinks(l, user=user):
- addrs = Utils.FindMatchingAddresses(user, l.members,
- l.digest_members)
+ def optionslinks(listname, user=user):
+ mlist = MailList.MailList(listname, lock=0)
+ addrs = Utils.FindMatchingAddresses(user, mlist.members,
+ mlist.digest_members)
if addrs:
addr = Utils.ObscureEmail(addrs[0])
- if l.obscure_addresses:
+ if mlist.obscure_addresses:
addr = Utils.ObscureEmail(addr)
- url = l.GetAbsoluteOptionsURL(addr)
- link = Link(url, l.real_name)
- return l._internal_name, link
+ url = mlist.GetAbsoluteOptionsURL(addr)
+ link = Link(url, mlist.real_name)
+ return mlist.internal_name(), link
- all_links = filter(None, Utils.map_maillists(optionslinks))
+ all_links = filter(None, map(optionslinks, Utils.list_names()))
all_links.sort()
items = OrderedList()
for name, link in all_links: