On 2021/03/03 4:05, Daniel Shahaf wrote:
> Yasuhito FUTATSUKI wrote on Tue, 02 Mar 2021 03:21 +00:00:
>> On 2021/03/02 0:41, Daniel Shahaf wrote:
>>> Yasuhito FUTATSUKI wrote on Mon, Mar 01, 2021 at 10:55:51 +0900:
>>>> +++ subversion/tests/cmdline/svneditor.sh.in       (working copy)
>>>> @@ -0,0 +1,40 @@
>>>> +print_python_path()
>>>> +{
>>>> +cat <<"_SVN_EOF"
>>>> +@PYTHON@x
>>>> +_SVN_EOF
>>>> +}
>>>
>>> I don't see any value of @PYTHON@ that would benefit from being
>>> carefully unescaped like this, since Makefile.in already assumes that
>>> @PYTHON@ can be used either bare or in double quotes:
>>
>> Then, it is just same for expansion of @abs_srcdir@. As the use of
>> abs_srcdir in Makefile is not quoted, expansion of @abs_srcdir@ in
>> svneditor.sh can be used without quotes, putting aside which is
>> good embedding path statically or setting it at run time.
>>
> 
> +1
> 
>>>> +python="$(print_python_path)"
>>>> +python="${python%x}"
>>>> +
>>>> +script_dir="`cd $(dirname "$0"); pwd`"
>>>> +
>>>
>>> If «$0» needs quoting, then quotes are needed around the «$(…)»
>>> construct as well.
>>
>> Sure. And the result of the observation above, bare $0 can be used here,
>> unless the scripts are moved or copied to another place.
> 
> I don't agree with this part.  If we use a bare $0 and someone tries to
> update the build system to support $abs_srcdir/$abs_builddir with spaces
> (this was looked into at some point in the past), they'll have one more
> mole to whack; and if someone cribs the code from this script into
> another script where the assumption 'The dirname of $0 doesn't include
> spaces' doesn't hold, they'll have to notice the the double quotes'
> absence and add them, or else they'll have a bug waiting to manifest;
> whereas if we double-quote the $0, there's no downside.
> 
>> To launch svneditor.py script $script_dir can be relative path, this
>> can be simply,
>>
>>     script_dir=`dirname "$0"`
>>
>> Thus, a launcher script (without file header) can be
>>
>> [[[
>> script_dir=`dirname "$0"`
>> exec @PYTHON@ "$script_dir"/svneditor.py "$@"
>> ]]]
>>
> 
> +1.001
> 
>> or one in previous revision of patch (B).
> 
> +1
 
I've commited the former of above candidates (using script_dir at runtime).

Cheers,
-- 
Yasuhito FUTATSUKI <futat...@yf.bsclub.org>

Reply via email to