shairport-sync creates its pidfile at /var/run/shairport-sync/, so pass
that path to start-stop-daemon in the stop operation.
Also pass the executable path, allowing start-stop-daemon to check if
the PID matches the shairport-sync process, preventing killing some
other inocent daemon.
Fixes:
https://bugs.busybox.net/show_bug.cgi?id=11566
Reported-by: Bin Zhang <yangtze31@gmail.com>
Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
case "$1" in
start)
printf "Starting shairport-sync: "
- start-stop-daemon -S -q -p /var/run/shairport-sync.pid --exec /usr/bin/shairport-sync -- $OPTIONS
+ start-stop-daemon -S -q --exec /usr/bin/shairport-sync -- $OPTIONS
[ $? = 0 ] && echo "OK" || echo "FAIL"
;;
stop)
printf "Stopping shairport-sync: "
- start-stop-daemon -K -q -p /var/run/shairport-sync.pid
+ start-stop-daemon -K -q --exec /usr/bin/shairport-sync \
+ -p /var/run/shairport-sync/shairport-sync.pid
[ $? = 0 ] && echo "OK" || echo "FAIL"
;;
restart)
$0 stop
+ sleep 1
$0 start
;;
*)