comparison mercurial/localrepo.py @ 13113:a98a90023261

localrepo: remove unneeded os.unlink call in wwrite The opener already unlinks the filename before 'w'riting, for both the symlink and the normal file case. It also now resets the flags for normal files on 'w'rite, which makes this os.unlink call completely redundant. For Windows, removing this extra unlink call helps to avoid tripping issue2524 (os.unlink followed by a write).
author Adrian Buehlmann <adrian@cadifra.com>
date Fri, 10 Dec 2010 16:10:14 +0100
parents d73c3034deee
children c36dad4f6e54
comparison
equal deleted inserted replaced
13112:039a964dbbb3 13113:a98a90023261
627 data = self.wopener(filename, 'r').read() 627 data = self.wopener(filename, 'r').read()
628 return self._filter(self._encodefilterpats, filename, data) 628 return self._filter(self._encodefilterpats, filename, data)
629 629
630 def wwrite(self, filename, data, flags): 630 def wwrite(self, filename, data, flags):
631 data = self._filter(self._decodefilterpats, filename, data) 631 data = self._filter(self._decodefilterpats, filename, data)
632 try:
633 os.unlink(self.wjoin(filename))
634 except OSError:
635 pass
636 if 'l' in flags: 632 if 'l' in flags:
637 self.wopener.symlink(data, filename) 633 self.wopener.symlink(data, filename)
638 else: 634 else:
639 self.wopener(filename, 'w').write(data) 635 self.wopener(filename, 'w').write(data)
640 if 'x' in flags: 636 if 'x' in flags: