]> code.delx.au - offlineimap/blobdiff - offlineimap/folder/IMAP.py
Added code to limit command line length for very large mailboxes
[offlineimap] / offlineimap / folder / IMAP.py
index e18cb5111c0b28bf3d9ac3b9a7523c3d443933b7..93f83f4a449aa3919357b68bcbdfb9bbd9bc0441 100644 (file)
@@ -282,6 +282,12 @@ class IMAPFolder(BaseFolder):
         self.processmessagesflags('-', uidlist, flags)
 
     def processmessagesflags(self, operation, uidlist, flags):
+        if len(uidlist) > 101:
+            # Hack for those IMAP ervers with a limited line length
+            self.processmessagesflags(operation, uidlist[:100], flags)
+            self.processmessagesflags(operation, uidlist[100:], flags)
+            return
+        
         imapobj = self.imapserver.acquireconnection()
         try:
             try: