hts-tvheadend: add while loop for restarting tvheadend if it crashes

This commit is contained in:
Gregor Fuis 2012-02-27 20:38:29 +01:00
parent 3ef2525313
commit c62da08102
4 changed files with 22 additions and 9 deletions

View File

@ -1,5 +1,6 @@
2.0.7
- enable unloading/loading dvb modules on suspend/resume
- add while loop for restarting tvheadend if it crashes
2.0.6
- add possibilty to start / stop addon from addon manager with enable / disable

View File

@ -22,6 +22,9 @@
. /etc/profile
LOCKDIR="/var/lock/"
LOCKFILE="tvheadend.disabled"
ADDON_DIR="$HOME/.xbmc/addons/service.multimedia.hts-tvheadend"
ADDON_HOME="$HOME/.xbmc/userdata/addon_data/service.multimedia.hts-tvheadend"
ADDON_BIN="tvheadend"
@ -40,7 +43,7 @@ if [ ! -f "$XMLTV_SETTINGS_FILE" ]; then
cp $ADDON_DIR/xmltv-config $XMLTV_SETTINGS_FILE
fi
TVHEADEND_ARG="-f -C -s -u root -g video -c $ADDON_HOME"
TVHEADEND_ARG="-C -s -u root -g video -c $ADDON_HOME"
mkdir -p $ADDON_HOME
if [ ! $(pidof $ADDON_BIN) ]; then
@ -52,5 +55,15 @@ mkdir -p $ADDON_HOME
. $driver_dvb
done
$ADDON_BIN $TVHEADEND_ARG &>$LOG_FILE
if [ -f "$LOCKDIR/$LOCKFILE" ] ; then
rm -rf "$LOCKDIR/$LOCKFILE"
fi
while [ true ] ; do
if [ -f "$LOCKDIR/$LOCKFILE" ] ; then
break
fi
$ADDON_BIN $TVHEADEND_ARG &>$LOG_FILE
sleep 1
done &
fi

View File

@ -22,8 +22,13 @@
. /etc/profile
LOCKDIR="/var/lock/"
LOCKFILE="tvheadend.disabled"
ADDON_BIN="tvheadend"
if [ $(pidof $ADDON_BIN) ];then
mkdir -p "$LOCKDIR"
touch "$LOCKDIR/$LOCKFILE"
killall $ADDON_BIN
fi

View File

@ -22,9 +22,6 @@
. /etc/profile
LOCKDIR="/var/lock/"
LOCKFILE="tvheadend"
ADDON_HOME="$HOME/.xbmc/userdata/addon_data/service.multimedia.hts-tvheadend"
ADDON_SETTINGS="$ADDON_HOME/settings.xml"
REMOVE_MODULES=`grep REMOVE_MODULES $ADDON_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
@ -33,8 +30,6 @@ case "$1" in
hibernate|suspend)
if [ $(pidof tvheadend) ];then
progress "Shutting down HTS TVHeadend for suspending..."
mkdir -p "$LOCKDIR"
touch "$LOCKDIR/$LOCKFILE"
tvheadend.stop
for module in $REMOVE_MODULES ; do
rmmod -w $module
@ -49,7 +44,6 @@ case "$1" in
done
progress "Restarting HTS TVHeadend for wakeup..."
tvheadend.start
rm -rf "$LOCKDIR/$LOCKFILE"
fi
;;