]> code.delx.au - offlineimap/blobdiff - offlineimap/folder/Maildir.py
Sync INTERNALDATE <-> mtime
[offlineimap] / offlineimap / folder / Maildir.py
index 525f9367638d73c0a85b19f54afe47372eb7849a..6d61c3d08e957618664b413d3208761bc5867939 100644 (file)
@@ -124,7 +124,12 @@ class MaildirFolder(BaseFolder):
         file.close()
         return retval.replace("\r\n", "\n")
 
-    def savemessage(self, uid, content, flags):
+    def getmessagetime( self, uid ):
+        filename = self.messagelist[uid]['filename']
+        st = os.stat(filename)
+        return st.st_mtime
+
+    def savemessage(self, uid, content, flags, rtime):
         ui = UIBase.getglobalui()
         ui.debug('maildir', 'savemessage: called to write with flags %s and content %s' % \
                  (repr(flags), repr(content)))
@@ -165,6 +170,7 @@ class MaildirFolder(BaseFolder):
         file = open(os.path.join(tmpdir, tmpmessagename), "wt")
         file.write(content)
         file.close()
+        os.utime(os.path.join(tmpdir,tmpmessagename), (rtime,rtime))
         ui.debug('maildir', 'savemessage: moving from %s to %s' % \
                  (tmpmessagename, messagename))
         os.link(os.path.join(tmpdir, tmpmessagename),