diff --git a/plugin/contents/ui/cava-start.sh b/plugin/contents/ui/cava-start.sh index e617aaf..42907f1 100755 --- a/plugin/contents/ui/cava-start.sh +++ b/plugin/contents/ui/cava-start.sh @@ -1,6 +1,15 @@ #!/usr/bin/env bash -pkill -f "cava -p.*skeledance" 2>/dev/null -pkill -f "cava-server.py" 2>/dev/null +LOCK=/tmp/skeledance_cava.lock + +# Prevent multiple instances +if [ -f "$LOCK" ] && kill -0 "$(cat "$LOCK")" 2>/dev/null; then + exit 0 +fi +echo $$ > "$LOCK" +trap 'rm -f "$LOCK"' EXIT + +pkill -x cava 2>/dev/null +pkill -f cava-server 2>/dev/null sleep 0.2 DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"