Mercurial > hg-stable
comparison mercurial/merge.py @ 16255:ca5cc2976574 stable
merge: handle linear update to symlink correctly (issue3316)
This fixes a regression introduced by fcf66193b186. If no file-level
merge is needed, we can update flags directly, otherwise we have a
conflict to resolve in filemerge.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Tue, 13 Mar 2012 16:28:08 -0500 |
parents | fcf66193b186 |
children | c655e4acaa82 7a5524f240ad |
comparison
equal
deleted
inserted
replaced
16254:c7eef052c9e3 | 16255:ca5cc2976574 |
---|---|
171 return "l" # Symlink | 171 return "l" # Symlink |
172 return "" | 172 return "" |
173 if m and m != a: # changed from a to m | 173 if m and m != a: # changed from a to m |
174 return m | 174 return m |
175 if n and n != a: # changed from a to n | 175 if n and n != a: # changed from a to n |
176 if n == 'l' or a == 'l': | 176 if (n == 'l' or a == 'l') and m1[f] != ma[f]: |
177 # can't automatically merge symlink flag change here, let | 177 # can't automatically merge symlink flag when there |
178 # filemerge take care of it | 178 # are file-level conflicts here, let filemerge take |
179 # care of it | |
179 return m | 180 return m |
180 return n | 181 return n |
181 return '' # flag was cleared | 182 return '' # flag was cleared |
182 | 183 |
183 def act(msg, m, f, *args): | 184 def act(msg, m, f, *args): |