Am 09.07.19 um 17:11 schrieb Thomas Baetzler: > Package: systemd > Version: 241-5 > Severity: normal > Tags: patch > > Dear Maintainer, > > After upgrading to Debian 10 we noticed a slightly different behaviour > in /lib/lsb/init-functions.d/40-systemd which caused one of our scripts > to break and which also causes some /etc/init.d files like /etc/init.d/mysql > to no longer to display their help text when calling them without a parameter. > > The root cause are accesses to the $1 and $2 variables without checking > if they are defined beforehand. When running code using "set -u", this > causes the above mentioned error. > > I've outlined this very simple fix which bypasses all further tests if > $1 and so on are undefined. > > $ diff -C 9 40-systemd.orig 40-systemd > *** 40-systemd.orig 2019-05-24 22:58:59.000000000 +0200 > --- 40-systemd 2019-07-09 16:40:39.642678140 +0200 > *************** > *** 1,18 **** > --- 1,21 ---- > # -*-Shell-script-*- > # /lib/lsb/init-functions > > _use_systemctl=0 > if [ -d /run/systemd/system ]; then > > if [ -n "${__init_d_script_name:-}" ]; then # scripts run > with new init-d-script > executable="$__init_d_script_name" > argument="$1" > + elif [ $# -eq 0 ] ; then > + executable="$0" > + argument="" > elif [ "${0##*/}" = "init-d-script" ] || > [ "${0##*/}" = "${1##*/}" ]; then # scripts run with > old init-d-script > executable="$1" > argument="$2" > else # plain old scripts > executable="$0" > argument="$1" > fi
Mert, since this basically your code, could you have a look at this. -- Why is it that all of the instruments seeking intelligent life in the universe are pointed away from Earth?
signature.asc
Description: OpenPGP digital signature