810 " to http://www.selenic.com/mercurial/bts\n")) |
810 " to http://www.selenic.com/mercurial/bts\n")) |
811 problems += patchproblems |
811 problems += patchproblems |
812 |
812 |
813 os.unlink(fa) |
813 os.unlink(fa) |
814 os.unlink(fd) |
814 os.unlink(fd) |
815 |
|
816 # merge helper |
|
817 ui.status(_("Checking merge helper...\n")) |
|
818 cmd = (os.environ.get("HGMERGE") or ui.config("ui", "merge") |
|
819 or "hgmerge") |
|
820 cmdpath = util.find_exe(cmd) or util.find_exe(cmd.split()[0]) |
|
821 if not cmdpath: |
|
822 if cmd == 'hgmerge': |
|
823 ui.write(_(" No merge helper set and can't find default" |
|
824 " hgmerge script in PATH\n")) |
|
825 ui.write(_(" (specify a merge helper in your .hgrc file)\n")) |
|
826 else: |
|
827 ui.write(_(" Can't find merge helper '%s' in PATH\n") % cmd) |
|
828 ui.write(_(" (specify a merge helper in your .hgrc file)\n")) |
|
829 problems += 1 |
|
830 else: |
|
831 # actually attempt a patch here |
|
832 fa = writetemp("1\n2\n3\n4\n") |
|
833 fl = writetemp("1\n2\n3\ninsert\n4\n") |
|
834 fr = writetemp("begin\n1\n2\n3\n4\n") |
|
835 r = util.system('%s "%s" "%s" "%s"' % (cmd, fl, fa, fr)) |
|
836 if r: |
|
837 ui.write(_(" Got unexpected merge error %d!\n") % r) |
|
838 problems += 1 |
|
839 m = file(fl).read() |
|
840 if m != "begin\n1\n2\n3\ninsert\n4\n": |
|
841 ui.write(_(" Got unexpected merge results!\n")) |
|
842 ui.write(_(" (your merge helper may have the" |
|
843 " wrong argument order)\n")) |
|
844 ui.write(_(" Result: %r\n") % m) |
|
845 problems += 1 |
|
846 os.unlink(fa) |
|
847 os.unlink(fl) |
|
848 os.unlink(fr) |
|
849 |
815 |
850 # editor |
816 # editor |
851 ui.status(_("Checking commit editor...\n")) |
817 ui.status(_("Checking commit editor...\n")) |
852 editor = ui.geteditor() |
818 editor = ui.geteditor() |
853 cmdpath = util.find_exe(editor) or util.find_exe(editor.split()[0]) |
819 cmdpath = util.find_exe(editor) or util.find_exe(editor.split()[0]) |