- elif [ ! -r "$d/.autodl/sexpr" ]; then
- touch "$d/.autodl/disabled"
- echo "$tag lacks sexpr" >&2
- echo "$tag" >>"$HOME/dc/autodl/faulty"
- else
- if [ ! -e "$HOME/dc/autodl/run/$tag" ]; then
- if [ $((`date +%s` - $lastget)) -gt 20 ]; then
- getnext "$d" "$tag" &
- lastget=`date +%s`
- pid=$!
- echo "$pid" >"$HOME/dc/autodl/run/$tag"
+ fi
+ if [ -e "$d/.autodl/restart" ]; then
+ echo "restarting $tag per user request"
+ rm -f "$d/.autodl/restart"
+ if [ -r "$HOME/dc/autodl/run/$tag" ]; then
+ pid="`cat "$HOME/dc/autodl/run/$tag"`"
+ echo "sending SIGUSR1 to $pid"
+ kill -USR1 "$pid"
+ while [ -e "$HOME/dc/autodl/run/$tag" ]; do
+ echo "waiting for it to exit"
+ sleep 1
+ done
+ else
+ echo "could not find pid for $tag"
+ fi
+ fi
+ if [ $start = y ]; then
+ if [ ! -r "$d/.autodl/sexpr" ]; then
+ touch "$d/.autodl/disabled"
+ echo "$tag lacks sexpr" >&2
+ echo "$tag" >>"$HOME/dc/autodl/faulty"
+ else
+ if [ ! -e "$HOME/dc/autodl/run/$tag" ]; then
+ if [ $((`date +%s` - $lastget)) -gt 20 ]; then
+ getnext "$d" "$tag" &
+ lastget=`date +%s`
+ pid=$!
+ echo "$pid" >"$HOME/dc/autodl/run/$tag"
+ fi