diff mercurial/commands.py @ 21957:2122b82b6987 stable

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.
author Alexandre Garnier <zigarn@gmail.com>
date Thu, 31 Jul 2014 10:31:56 +0100
parents 3838b910fa6b
children dccbf52ffe9f
line wrap: on
line diff
--- 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"))