Thread (10 messages) 10 messages, 3 authors, 2016-06-15

Re: [PATCH 1/4] mergetool--lib: Simplify command expressions

From: David Aguilar <hidden>
Date: 2016-06-15 22:55:55

On Sun, Jan 27, 2013 at 2:08 PM, Johannes Sixt [off-list ref] wrote:
Am 27.01.2013 22:24, schrieb David Aguilar:
quoted
Use $(command "$arg") instead of "$(command "$arg")" as the latter is
harder to read.
If at all, you should restrict yourself to simplify only variable
assignments. Because this case:
quoted
-     if test -z "$(get_merge_tool_cmd "$merge_tool")" &&
+     if test -z $(get_merge_tool_cmd "$merge_tool") &&
cannot work as intended: If the output of $() is empty, then without the
outer quotes this becomes

  test -z

without an operand for -z, which is a syntax error (of the test command).
Definitely.  I learned this the hard way when the tests broke on me while
working it ;-)  My patch rewrites things to always use var=$(command)
expressions with separate test "$var" evaluating them.
Thanks for the tip,
-- 
David
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help