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>