Blame view

buildroot/buildroot-2016.08.1/package/kodi/br-kodi 929 Bytes
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
  #!/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}