------------------------------------------------------------
revno: 1008
committer: Mark Sapiro <[EMAIL PROTECTED]>
branch nick: 2.2
timestamp: Sun 2008-09-21 11:59:06 -0700
message:
  The immediately preceding fix for bug #266106 (sf998384) was incomplete.
  It fixed the underlying issue, but didn't fix an improperly converted
  request.pck file.  This change adds code to detect and recover from an
  incorect conversion.
modified:
  Mailman/ListAdmin.py

=== modified file 'Mailman/ListAdmin.py'
--- a/Mailman/ListAdmin.py      2008-09-19 15:03:18 +0000
+++ b/Mailman/ListAdmin.py      2008-09-21 18:59:06 +0000
@@ -538,7 +538,21 @@
             except IOError, e:
                 if e.errno <> errno.ENOENT: raise
                 self.__db = {}
-        for id, (op, info) in self.__db.items():
+        for id, x in self.__db.items():
+            # A bug in versions 2.1.1 through 2.1.11 could have resulted in
+            # just info being stored instead of (op, info)
+            if len(x) == 2:
+                op, info = x
+            elif len(x) == 6:
+                # This is the buggy info. Check for digest flag.
+                if x[4] in (0, 1):
+                    op = SUBSCRIPTION
+                else:
+                    op = HELDMSG
+                self.__db[id] = op, x
+                continue
+            else:
+                assert False, 'Unknown record format in %s' % self.__filename
             if op == SUBSCRIPTION:
                 if len(info) == 4:
                     # pre-2.1a2 compatibility



--
Active development version (web u/i update)
https://code.launchpad.net/~mailman-coders/mailman/2.2

You are receiving this branch notification because you are subscribed to it.
_______________________________________________
Mailman-checkins mailing list
[email protected]
Unsubscribe: 
http://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org

Reply via email to