def makefolder(self, foldername):
# "touch" the file, truncating it.
- file = open(self.getfolderfilename(foldername), "wb")
+ 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
retval = []
for folder in os.listdir(self.directory):
retval.append(folder.LocalStatus.LocalStatusFolder(self.directory,
- folder, self, self.accountname))
+ folder, self, self.accountname,
+ self.config))
return retval
def getfolder(self, foldername):
return folder.LocalStatus.LocalStatusFolder(self.directory, foldername,
- self, self.accountname)
+ self, self.accountname,
+ self.config)