mercurial/appendfile.py
changeset 2236 d7f866789d7e
parent 2232 ef3c039e7ab8
child 3886 abaee83ce0a6
equal deleted inserted replaced
2235:457e4247315d 2236:d7f866789d7e
   128         '''copy data from temp files to real files.'''
   128         '''copy data from temp files to real files.'''
   129         # write .d file before .i file.
   129         # write .d file before .i file.
   130         tmpnames = self.tmpnames.items()
   130         tmpnames = self.tmpnames.items()
   131         tmpnames.sort()
   131         tmpnames.sort()
   132         for name, tmpname in tmpnames:
   132         for name, tmpname in tmpnames:
   133             fp = open(tmpname, 'rb')
   133             ifp = open(tmpname, 'rb')
   134             s = fp.read()
   134             ofp = self.realopener(name, 'a')
   135             fp.close()
   135             for chunk in util.filechunkiter(ifp):
       
   136                 ofp.write(chunk)
       
   137             ifp.close()
   136             os.unlink(tmpname)
   138             os.unlink(tmpname)
   137             del self.tmpnames[name]
   139             del self.tmpnames[name]
   138             fp = self.realopener(name, 'a')
   140             ofp.close()
   139             fp.write(s)
       
   140             fp.close()
       
   141 
   141 
   142     def cleanup(self):
   142     def cleanup(self):
   143         '''delete temp files (this discards unwritten data!)'''
   143         '''delete temp files (this discards unwritten data!)'''
   144         for tmpname in self.tmpnames.values():
   144         for tmpname in self.tmpnames.values():
   145             os.unlink(tmpname)
   145             os.unlink(tmpname)