changeset 13718:5b3383ea67d2 stable

merge: avoid unlinking destination of merge when case changes (issue2715)
author Matt Mackall <mpm@selenic.com>
date Tue, 22 Mar 2011 12:00:38 -0500
parents bc41d08a5ccc
children 6783f47d90dd
files mercurial/merge.py
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/merge.py	Tue Mar 22 11:59:43 2011 -0500
+++ b/mercurial/merge.py	Tue Mar 22 12:00:38 2011 -0500
@@ -338,7 +338,8 @@
                 else:
                     merged += 1
             util.set_flags(repo.wjoin(fd), 'l' in flags, 'x' in flags)
-            if f != fd and move and os.path.lexists(repo.wjoin(f)):
+            if (move and repo.dirstate.normalize(fd) != f
+                and os.path.lexists(repo.wjoin(f))):
                 repo.ui.debug("removing %s\n" % f)
                 os.unlink(repo.wjoin(f))
         elif m == "g": # get