![Bernd Kuhls](/assets/img/avatar_default.png)
Background information: http://xbmc.org/introducing-kodi-14. In a first step to bump version to 14.0-Helix, we move the xbmc package to a new directory called kodi. Appropriate Config.in.legacy variables are added. [Thomas: rename patches to the new convention.] Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
37 lines
929 B
Bash
Executable file
37 lines
929 B
Bash
Executable file
#!/bin/sh
|
|
|
|
# We're called with the real Kodi executable as
|
|
# first argument, followed by any Kodi extra args
|
|
KODI="${1}"
|
|
shift
|
|
|
|
# In case someone asked we terminate, just kill
|
|
# the Kodi process
|
|
trap_kill() {
|
|
LOOP=0
|
|
killall "${KODI##*/}"
|
|
}
|
|
trap trap_kill INT QUIT TERM
|
|
|
|
LOOP=1
|
|
while [ ${LOOP} -eq 1 ]; do
|
|
# Hack: BusyBox ash does not catch signals while a non-builtin
|
|
# is running, and only catches the signal when the non-builtin
|
|
# command ends. So, we just background the Kodi binary, and wait
|
|
# for it. But BusyBox' ash's wait builtin does not return the
|
|
# exit code even if there was only one job (which is correct
|
|
# for POSIX). So we explicitly wait for the Kodi job
|
|
"${KODI}" "${@}" &
|
|
wait %1
|
|
ret=$?
|
|
case "${ret}" in
|
|
0) ;;
|
|
64) poweroff; LOOP=0;;
|
|
66) reboot; LOOP=0;;
|
|
*) # Crash
|
|
sleep 1
|
|
;;
|
|
esac
|
|
done
|
|
exit ${ret}
|