# HG changeset patch # User Alexandre Garnier # Date 1406799116 -3600 # Node ID 2122b82b6987c074ce9b4283c5d2b5927701a36c # Parent 93b804fced5ac3663a0f81d4fcee49ef23305371 debuginstall: handle quoted path for editor (issue4316) When using an editor path with spaces and options, you can set 'ui.editor' to '"/path to your/editor" -opt' and it works fine but 'hg debuginstall' is complaining about it because it simply splits the editor and tests presence of '"/path'. Now correctly parse 'ui.editor' string by handling quoted path. diff -r 93b804fced5a -r 2122b82b6987 mercurial/commands.py --- a/mercurial/commands.py Wed Jul 30 18:28:37 2014 -0500 +++ b/mercurial/commands.py Thu Jul 31 10:31:56 2014 +0100 @@ -8,7 +8,7 @@ from node import hex, bin, nullid, nullrev, short from lock import release from i18n import _ -import os, re, difflib, time, tempfile, errno +import os, re, difflib, time, tempfile, errno, shlex import sys import hg, scmutil, util, revlog, copies, error, bookmarks import patch, help, encoding, templatekw, discovery @@ -2247,7 +2247,7 @@ # editor ui.status(_("checking commit editor...\n")) editor = ui.geteditor() - cmdpath = util.findexe(editor) or util.findexe(editor.split()[0]) + cmdpath = util.findexe(shlex.split(editor)[0]) if not cmdpath: if editor == 'vi': ui.write(_(" No commit editor set and can't find vi in PATH\n"))