diff mercurial/merge.py @ 5059:8d9bdcbb2b18

merge: avoid double deletion mentioned in issue636
author Matt Mackall <mpm@selenic.com>
date Thu, 02 Aug 2007 12:29:10 -0500
parents f191bc3916f7
children 2ef14e29e538 ad6b97132b81
line wrap: on
line diff
--- a/mercurial/merge.py
+++ b/mercurial/merge.py
@@ -415,10 +415,10 @@ def applyupdates(repo, action, wctx, mct
                     updated += 1
                 else:
                     merged += 1
-            if f != fd and move:
+            util.set_exec(repo.wjoin(fd), "x" in flags)
+            if f != fd and move and util.lexists(repo.wjoin(f)):
                 repo.ui.debug(_("removing %s\n") % f)
                 os.unlink(repo.wjoin(f))
-            util.set_exec(repo.wjoin(fd), "x" in flags)
         elif m == "g": # get
             flags = a[2]
             repo.ui.note(_("getting %s\n") % f)