CHOP-957: Stop reading gridargs.dat in 'secondlife' wrapper script.
However, for backwards compatibility, continue to recognize and discard --skip-gridargs switch.meow-7.2.2
parent
b7ac6c6b53
commit
316f1fd026
|
|
@ -121,37 +121,21 @@ export SAVED_LD_LIBRARY_PATH="${LD_LIBRARY_PATH}"
|
|||
|
||||
export LD_LIBRARY_PATH="$PWD/lib:${LD_LIBRARY_PATH}"
|
||||
|
||||
# Have to deal specially with gridargs.dat; typical contents look like:
|
||||
# --channel "Second Life Test" --settings settings_test.xml
|
||||
# Simply embedding $(<etc/gridargs.dat) into a command line treats each of
|
||||
# Second, Life and Developer as separate args -- no good. We need bash to
|
||||
# process quotes using eval.
|
||||
# First, check if we have been instructed to skip reading in gridargs.dat:
|
||||
skip_gridargs=false
|
||||
argnum=0
|
||||
# Copy "$@" to ARGS array specifically to delete the --skip-gridargs switch.
|
||||
# The gridargs.dat file is no more, but we still want to avoid breaking
|
||||
# scripts that invoke this one with --skip-gridargs.
|
||||
ARGS=()
|
||||
for ARG in "$@"; do
|
||||
if [ "--skip-gridargs" == "$ARG" ]; then
|
||||
skip_gridargs=true
|
||||
else
|
||||
ARGS[$argnum]="$ARG"
|
||||
argnum=$(($argnum+1))
|
||||
if [ "--skip-gridargs" != "$ARG" ]; then
|
||||
ARGS[${#ARGS[*]}]="$ARG"
|
||||
fi
|
||||
done
|
||||
|
||||
# Second, read it without scanning, then scan that string. Break quoted words
|
||||
# into a bash array. Note that if gridargs.dat is empty, or contains only
|
||||
# whitespace, the resulting gridargs array will be empty -- zero entries --
|
||||
# therefore "${gridargs[@]}" entirely vanishes from the command line below,
|
||||
# just as we want.
|
||||
if ! $skip_gridargs ; then
|
||||
eval gridargs=("$(<etc/gridargs.dat)")
|
||||
fi
|
||||
|
||||
# Run the program.
|
||||
# Don't quote $LL_WRAPPER because, if empty, it should simply vanish from the
|
||||
# command line. But DO quote "$@": preserve separate args as individually
|
||||
# quoted. Similar remarks about the contents of gridargs.
|
||||
$LL_WRAPPER bin/do-not-directly-run-secondlife-bin "${gridargs[@]}" "${ARGS[@]}"
|
||||
# command line. But DO quote "${ARGS[@]}": preserve separate args as
|
||||
# individually quoted.
|
||||
$LL_WRAPPER bin/do-not-directly-run-secondlife-bin "${ARGS[@]}"
|
||||
LL_RUN_ERR=$?
|
||||
|
||||
# Handle any resulting errors
|
||||
|
|
|
|||
Loading…
Reference in New Issue