from Base import BaseRepository
from offlineimap import folder
+import offlineimap.folder.LocalStatus
import os, re
class LocalStatusRepository(BaseRepository):
return os.path.join(self.directory, foldername)
def makefolder(self, foldername):
- # "touch" the file.
- file = open(self.getfolderfilename(foldername), "ab")
+ # "touch" the file, truncating it.
+ filename = self.getfolderfilename(foldername)
+ file = open(filename + ".tmp", "wt")
+ file.write(offlineimap.folder.LocalStatus.magicline + '\n')
+ file.flush()
+ os.fsync(file.fileno())
file.close()
+ os.rename(filename + ".tmp", filename)
+
# Invalidate the cache.
self.folders = None