]> code.delx.au - offlineimap/commitdiff
Revert "fix behaviour for delete/expunge, when lacking rights"
authorJohn Goerzen <jgoerzen@complete.org>
Tue, 4 Mar 2008 14:13:48 +0000 (08:13 -0600)
committerJohn Goerzen <jgoerzen@complete.org>
Tue, 4 Mar 2008 14:13:48 +0000 (08:13 -0600)
This reverts commit c305d63e005c8ca1ae57f1ec54f023e0d0069824.

Zak Smith reported it continued to be a problem

offlineimap/folder/IMAP.py

index 68361226a5173da29020c5ce905ac730f6efd032..05edaf0033ab6bb624a2ab22df63ca343cfa34b7 100644 (file)
@@ -424,17 +424,12 @@ class IMAPFolder(BaseFolder):
         self.addmessagesflags_noconvert(uidlist, ['T'])
         imapobj = self.imapserver.acquireconnection()
         try:
-            # Making sure, that we have the necessary rights
-            # ensuring that we access readonly: python's braindead imaplib.py
-            # otherwise might raise an exception during the myrights() call
-            imapobj.select(self.getfullname(),readonly=1)
-            if not 'd' in imapobj.myrights(self.getfullname())[1][0].split()[1]:
-                # no delete/expunge rights
+            try:
+                imapobj.select(self.getfullname())
+            except imapobj.readonly:
                 UIBase.getglobalui().deletereadonly(self, uidlist)
                 return
-
             if self.expunge:
-                imapobj.select(self.getfullname())
                 assert(imapobj.expunge()[0] == 'OK')
         finally:
             self.imapserver.releaseconnection(imapobj)