Mark Sapiro wrote:

>Mark Sapiro wrote:
>
>> Thanks for the report. This bug still exists in 2.1.11. The following
>> patch is totally untested, but I think it will fix it for '_'. I'll
>> have to think about other non-alphanumeric characters. At least it
>> will point to the right place in the code.
>
>
>Here's a better patch. It has been lightly tested, and will work for any 
>non-alphanumeric characters.
>
>--- Mailman/Cgi/admin.py        2007-05-08 03:16:04 +0000
>+++ Mailman/Cgi/admin.py        2008-07-28 00:17:06 +0000
>@@ -1,4 +1,4 @@
>-# Copyright (C) 1998-2007 by the Free Software Foundation, Inc.
>+# Copyright (C) 1998-2008 by the Free Software Foundation, Inc.
>  #
>  # This program is free software; you can redistribute it and/or
>  # modify it under the terms of the GNU General Public License
<snip>

Somehow the indentation got garbled in the patch in the last post. The
lines without leading + or - are indented an extra space. This time I
have attached the patch as the file admin.patch.txt. The patch is the
same, but should be properly indented in the attachment.

-- 
Mark Sapiro <[EMAIL PROTECTED]>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan

--- Mailman/Cgi/admin.py        2007-05-08 03:16:04 +0000
+++ Mailman/Cgi/admin.py        2008-07-28 00:17:06 +0000
@@ -1,4 +1,4 @@
-# Copyright (C) 1998-2007 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2008 by the Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or
 # modify it under the terms of the GNU General Public License
@@ -28,7 +28,6 @@
 import urllib
 import signal
 from types import *
-from string import lowercase, digits

 from email.Utils import unquote, parseaddr, formataddr

@@ -901,12 +900,10 @@
         qsenviron = os.environ.get('QUERY_STRING')
         if qsenviron:
             qs = cgi.parse_qs(qsenviron)
-            bucket = qs.get('letter', 'a')[0].lower()
-            if bucket not in digits + lowercase:
-                bucket = None
+            bucket = qs.get('letter', '0')[0].lower()
+        keys = buckets.keys()
+        keys.sort()
         if not bucket or not buckets.has_key(bucket):
-            keys = buckets.keys()
-            keys.sort()
             bucket = keys[0]
         members = buckets[bucket]
         action = adminurl + '/members?letter=%s' % bucket
@@ -942,7 +939,7 @@
     # Add the alphabetical links
     if bucket:
         cells = []
-        for letter in digits + lowercase:
+        for letter in keys:
             if not buckets.get(letter):
                 continue
             url = adminurl + '/members?letter=%s' % letter

------------------------------------------------------
Mailman-Users mailing list
Mailman-Users@python.org
http://mail.python.org/mailman/listinfo/mailman-users
Mailman FAQ: http://wiki.list.org/x/AgA3
Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/
Unsubscribe: 
http://mail.python.org/mailman/options/mailman-users/archive%40jab.org

Security Policy: http://wiki.list.org/x/QIA9

Reply via email to