Re: [PATCH] Fixing path quoting issues
From: David Kastrup <hidden>
Date: 2016-06-15 22:43:40
Johannes Sixt [off-list ref] writes:
Jonathan del Strother schrieb:quoted
+ cmt=`cat "$dotest/current"`This is ok, but...quoted
+ prev_head="`cat \"$dotest/prev_head\"`"... there are shells out there in the wild that will get badly confused by this sort of quoting and escaping. Butter use prev_head=$(cat "$dotest/prev_head")quoted
-VISUAL="$(pwd)/fake-editor.sh" +VISUAL="'$(pwd)/fake-editor.sh'"Huh? This looks very wrong.
It is correct, modulo breaking when there are single quotes in the current path name.
What are the extra quotes needed for?
Spaces in the current path name.
If they are really needed, isn't this a bug in git-rebase--interactive.sh?
No.
I question the usefulness of this patch. Why only fix breakage due to spaces in the path? What about single-quotes, double-quotes?
Double quotes would work. Single quotes wouldn't. You can do something like visualpath="$(pwd)" export visualpath VISUAL='"$visualpath/fake-editor.sh"' and this should work in all circumstances where VISUAL is interpreted as intended (which at the current point of time does not include git's C callers).
IMHO, it's not too much of a burden for developers to require "sane" build directory paths.
For a normal user, the only writable directories might be of the "C:\Programs and Data\User settings\Karl" variety. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum