|
|
@@ -18,14 +18,30 @@ if [ ! -e "${inFolder}" ]; then
|
|
|
exit 1
|
|
|
fi
|
|
|
|
|
|
+# Ensure we have a valid TMPDIR
|
|
|
+if [ ! -d "${TMPDIR}" ]; then
|
|
|
+ TMPDIR="`getconf DARWIN_USER_TEMP_DIR 2>/dev/null`"
|
|
|
+ if [ ! -d "${TMPDIR}" ]; then
|
|
|
+ TMPDIR="/var/tmp"
|
|
|
+ fi
|
|
|
+ if [ ! -d "${TMPDIR}" ]; then
|
|
|
+ TMPDIR="/tmp"
|
|
|
+ fi
|
|
|
+fi
|
|
|
+
|
|
|
# Bail if we're already running
|
|
|
-me="`basename "${0}"`"
|
|
|
-if [ `ps auwx | grep -v grep | grep "${me}" | wc -l` -gt 3 ]; then
|
|
|
- if [ -n "${DEBUG}" ] && [ $DEBUG -gt 0 ]; then
|
|
|
- echo 'Already running' 1>&2
|
|
|
+LOCK="${TMPDIR}/folderFixup.run"
|
|
|
+touch "${LOCK}"
|
|
|
+read MOUNT_PID < "${LOCK}"
|
|
|
+if [ -n "${MOUNT_PID}" ]; then
|
|
|
+ if ps -A -o pid | grep -q "${MOUNT_PID}"; then
|
|
|
+ if [ -n "${DEBUG}" ] && [ $DEBUG -gt 0 ]; then
|
|
|
+ echo 'Already running' 1>&2
|
|
|
+ fi
|
|
|
+ exit 0
|
|
|
fi
|
|
|
- exit 0
|
|
|
fi
|
|
|
+echo $$ > "${LOCK}"
|
|
|
|
|
|
# Bail if the load is high
|
|
|
if ! ~/bin/video/checkLoad.sh; then
|
|
|
@@ -56,6 +72,7 @@ cat "${tmp}" | \
|
|
|
grep -v "^ *$"
|
|
|
|
|
|
# Cleanup
|
|
|
+rm -f "${LOCK}"
|
|
|
rm -rf "${tmp}"
|
|
|
|
|
|
# Debug
|