mercurial/windows.py
changeset 49305 53e9422a9b45
parent 48986 d500df2e8034
child 49311 defc369d705e
equal deleted inserted replaced
49304:48f1b314056b 49305:53e9422a9b45
   636 
   636 
   637 def rename(src, dst):
   637 def rename(src, dst):
   638     '''atomically rename file src to dst, replacing dst if it exists'''
   638     '''atomically rename file src to dst, replacing dst if it exists'''
   639     try:
   639     try:
   640         os.rename(src, dst)
   640         os.rename(src, dst)
   641     except OSError as e:
   641     except FileExistsError:
   642         if e.errno != errno.EEXIST:
       
   643             raise
       
   644         unlink(dst)
   642         unlink(dst)
   645         os.rename(src, dst)
   643         os.rename(src, dst)
   646 
   644 
   647 
   645 
   648 def gethgcmd():
   646 def gethgcmd():