fixed not closing ttyread on closing ssh ?
[svn42.git] / dart / start-dart.sh
index 357ba9d..b166866 100755 (executable)
@@ -1,21 +1,27 @@
-#!/bin/bash
+#!/bin/sh
 
 if [ -z "$1" ]; then
-  echo "Usage $0 <mode>"
+  echo "Usage $0 <mode> [<param1> [<param2> ...]]"
   exit 1
 fi
 
 mode=$1
 shift
 
-FIFO=/tmp/dart.fifo
-rm -f $FIFO
+FIFO_D=`mktemp -d`
+FIFO=$FIFO_D/dart.fifo
 mkfifo $FIFO
-stty -echo
 
-ssh dart stty -F /dev/ttyDart 57600
-ssh dart cat /dev/ttyDart  >$FIFO &
-./eet $FIFO | ./dart-$mode.pl $* | ./dart-soundonly.pl | ../dart-sounds/src/dart-sounds ../dart-sounds/media > /dev/null
-rm -f $FIFO
+trap signal_handler INT TERM
+
+signal_handler()
+{
+  rm -rf $FIFO_D
+}
+
+stty -echo
+ssh dart ttyread /dev/ttyDart  >$FIFO &
+./eet $FIFO | ./dart-$mode.pl $* | ../dart-sounds/src/dart-sounds ../dart-sounds/media > /dev/null
+rm -rf $FIFO_D
 
 exit 0