diff -r 343aeefb553b -r d007df6daf8e mercurial/revlog.py --- a/mercurial/revlog.py Tue Apr 04 16:38:43 2006 -0400 +++ b/mercurial/revlog.py Tue Apr 04 16:38:44 2006 -0400 @@ -694,7 +694,7 @@ df.write(d) fp.close() df.close() - fp = self.opener(self.indexfile, 'w', atomic=True) + fp = self.opener(self.indexfile, 'w', atomictemp=True) self.version &= ~(REVLOGNGINLINEDATA) if self.count(): x = self.index[0] @@ -708,7 +708,9 @@ e = struct.pack(self.indexformat, *x) fp.write(e) - fp.close() + # if we don't call rename, the temp file will never replace the + # real index + fp.rename() self.chunkcache = None def addrevision(self, text, transaction, link, p1=None, p2=None, d=None):