[PATCH] filemerge: wrap quotes around tool path

Matt Mackall mpm at selenic.com
Mon Feb 4 13:23:02 CST 2008


On Mon, 2008-02-04 at 12:33 -0600, Steve Borho wrote:
> # HG changeset patch
> # User Steve Borho <steve at borho.org>
> # Date 1202147114 21600
> # Node ID 1da25064cd8eb0278fd3414b78a16a0f8729cf96
> # Parent  288ec2f6faa2a362dafa8da81bd03d96e36be5ee
> filemerge: wrap quotes around tool path
> 
> diff --git a/mercurial/filemerge.py b/mercurial/filemerge.py
> --- a/mercurial/filemerge.py
> +++ b/mercurial/filemerge.py
> @@ -184,7 +184,7 @@
>          replace = dict(local=a, base=b, other=c, output=out)
>          args = re.sub("\$(local|base|other|output)",
>                        lambda x: '"%s"' % replace[x.group()[1:]], args)
> -        r = util.system(toolpath + ' ' + args, cwd=repo.root, environ=env)
> +        r = util.system('"'+toolpath+'" '+args, cwd=repo.root, environ=env)
>  
>      if not r and _toolbool(ui, tool, "checkconflicts"):
>          if re.match("^(<<<<<<< .*|=======|>>>>>>> .*)$", fcm.data()):

Hmm, that breaks things like:

HGMERGE=script -with -some -other -args

We were using precisely that trick in run-tests.py until yesterday, so I
suspect other people are using it too.

Please describe what you're trying to fix. I suspect it'd be better to
introduce quotes in _findtool().

-- 
Mathematics is the supreme nostalgia of our time.



More information about the Mercurial-devel mailing list