changeset 768:20e95c245bc3

Fix local file changes being ignored after non-branch merge Bug introduced in eea96285cbf9 Spotted by TAH
author mpm@selenic.com
date Sat, 23 Jul 2005 10:00:56 -0500
parents 61ed30e82b27
children 0c033ef053ab
files mercurial/hg.py tests/test-up-local-change.out
diffstat 2 files changed, 9 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/hg.py	Fri Jul 22 19:46:02 2005 -0800
+++ b/mercurial/hg.py	Sat Jul 23 10:00:56 2005 -0500
@@ -1506,7 +1506,9 @@
             m, o, flag = merge[f]
             self.merge3(f, m, o)
             util.set_exec(self.wjoin(f), flag)
-            if moddirstate:
+            if moddirstate and mode == 'm':
+                # only update dirstate on branch merge, otherwise we
+                # could mark files with changes as unchanged
                 self.dirstate.update([f], mode)
 
         remove.sort()
--- a/tests/test-up-local-change.out	Fri Jul 22 19:46:02 2005 -0800
+++ b/tests/test-up-local-change.out	Sat Jul 23 10:00:56 2005 -0500
@@ -70,3 +70,9 @@
 
 + hg diff
 + sed 's/\(\(---\|+++\).*\)\t.*/\1/'
+diff -r 1e71731e6fbb a
+--- a/a
++++ b/a
+@@ -1,1 +1,1 @@
+-a2
++abc