comparison mercurial/appendfile.py @ 2232:ef3c039e7ab8

Always remove appendopener tmp files (fixes issue235). test-hup triggered this bug by killing "hg serve --stdio".
author Thomas Arendsen Hein <thomas@intevation.de>
date Tue, 09 May 2006 17:03:00 +0200
parents 6886bc0b77af
children d7f866789d7e
comparison
equal deleted inserted replaced
2231:9a2f4b2e7cf1 2232:ef3c039e7ab8
132 for name, tmpname in tmpnames: 132 for name, tmpname in tmpnames:
133 fp = open(tmpname, 'rb') 133 fp = open(tmpname, 'rb')
134 s = fp.read() 134 s = fp.read()
135 fp.close() 135 fp.close()
136 os.unlink(tmpname) 136 os.unlink(tmpname)
137 del self.tmpnames[name]
137 fp = self.realopener(name, 'a') 138 fp = self.realopener(name, 'a')
138 fp.write(s) 139 fp.write(s)
139 fp.close() 140 fp.close()
141
142 def cleanup(self):
143 '''delete temp files (this discards unwritten data!)'''
144 for tmpname in self.tmpnames.values():
145 os.unlink(tmpname)
140 146
141 # files for changelog and manifest are in different appendopeners, so 147 # files for changelog and manifest are in different appendopeners, so
142 # not mixed up together. 148 # not mixed up together.
143 149
144 class appendchangelog(changelog.changelog, appendopener): 150 class appendchangelog(changelog.changelog, appendopener):