diff mercurial/filemerge.py @ 18256:d084df89d948

merge: make internal merge fail cleanly on symlinks Simplemerge is not symlink aware and will never do the the right thing on symlinks. It would read the symlink as a file and abort with 'No such file or directory' on dangling symlinks. Instead, internal:merge now simply fails to merge symlinks.
author Mads Kiilerich <mads@kiilerich.com>
date Tue, 08 Jan 2013 04:15:41 +0100
parents 9a2cf955db84
children a35d0128545e
line wrap: on
line diff
--- a/mercurial/filemerge.py	Sun Dec 16 20:50:57 2012 +0100
+++ b/mercurial/filemerge.py	Tue Jan 08 04:15:41 2013 +0100
@@ -204,6 +204,10 @@
     Uses the internal non-interactive simple merge algorithm for merging
     files. It will fail if there are any conflicts and leave markers in
     the partially merged file."""
+    tool, toolpath, binary, symlink = toolconf
+    if symlink:
+        return False, 1
+
     r = _premerge(repo, toolconf, files)
     if r:
         a, b, c, back = files