Tweaked "already running" check
[rip_dvd/.git] / rip_dvd.wrap
index 128581d602842ee745303ed081ae561ee3b2ddfe..3c09442de0d8d2cd2f4c3a87adfa14d5e43803ae 100755 (executable)
@@ -5,6 +5,18 @@
 # script is called from the mythtv menus for example with a
 # smaller set of options.
 
+##############################################
+# Don't run if a previous rip attempt is still running
+SCRIPT_NAME1="rip_dvd.wrap"
+SCRIPT_NAME2="xterm -T Ripping"
+MY_PID=$$
+PARENT_PID=$PPID
+ps -ef | grep -e "$SCRIPT_NAME1" -e "$SCRIPT_NAME2" | grep -v grep | grep -v $MY_PID | grep -v $PARENT_PID
+if [[ $? == 0 ]]; then
+  echo -e "-E- Found an instance of this script already running. Aborting this additional attempt to rip...\n"
+  exit 1
+fi
+
 ##############################################
 # COMMAND LINE PROCESSING
 
@@ -18,7 +30,19 @@ shift 1
 ##############################################
 if [ -z "$dvdtype" ]; then
   echo "-E- $0 <dvdtype>' is a required option"
-  usage
+  exit 1
+fi
+
+mydir=$(cd $(dirname $0) && pwd)
+if [ -z "$ripcmd" ]
+then
+  if [ -x "$mydir/rip_dvd" ]
+  then
+    ripcmd="$mydir/rip_dvd"
+  else
+    echo >&2 "Cannot find your rip_dvd command!"
+    exit 1
+  fi
 fi
 
 ##############################################################################
@@ -86,7 +110,7 @@ elif [ "$dvdtype" == "church" ]; then
   rip_opts="$rip_opts"
 else
   echo '-E- Must specify dvdtype as "netflix" or "collection" or "childrens" or "church"'
-  usage
+  exit 1
 fi
 
 ##############################################