Thread (1 message) 1 message, 1 author, 2016-06-15

Re: [PATCH] git-sh-setup.sh: make GIT_EDITOR/core.editor/VISUAL/EDITOR accept commands

From: David Kastrup <hidden>
Date: 2016-06-15 22:43:25

Junio C Hamano [off-list ref] writes:
David Kastrup [off-list ref] writes:
quoted
David Kastrup [off-list ref] writes:
quoted
The previous code only allowed specifying a single executable rather
than a complete command like "emacsclient --alternate-editor vi" in
Oops, won't apply cleanly.  I found that I had already made a
different (trivial) patch previously.  Let me try again and fold that
patch in manually.
It is not just "won't apply".  What if GIT_DIR had spaces (which
is fine) and single-quotes in it?  Wouldn't it percolate down to
$@ because it becomes the leading directory of the temporary
file name?  And you quote '"$@"' and eval it, now what happens?
The eval removes the outer single quotes and then evaluates the
remaining "$@" which leaves the original argument structure completely
intact: What got passed into git_editor as 3 arguments will remain as
3 arguments, and even multiple embedded spaces in one argument will
get preserved perfectly.

If you don't believe me, throw whatever you want at it.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help