return 1
fi
- while ! mkdir "$lock"; do
+ while ! mkdir "$lock" 2>&-; do
block="$(cat "$lock/pid" || printf 1)"
if ! { ps -eo pid |grep -qwF "$block"; }; then
printf 'Overriding stale lock: %s\n' "$lock" >&2
sleep 1
done
printf '%i\n' $$ >"${lock}/pid"
- return 1
+ return 0
}
RELEASE(){
printf '%i\n' $$ >"${lock}/pid"
return 1
fi
+ return 0
else
printf 'Refusing to release foreign lock: %s\n' "$lock" >&2
return 1
s;\n;\\n;g;
s;\t;\\t;g;
s;\r;\\r;g;
+ s;\+;\\+;g;
+ s; ;+;g;
'
}
s;((^|[^\\])(\\\\)*)\\n;\1\n;g;
s;((^|[^\\])(\\\\)*)\\t;\1\t;g;
s;((^|[^\\])(\\\\)*)\\r;\1\r;g;
+ s;((^|[^\\])(\\\\)*)\+;\1 ;g;
tX;
+ s;((^|[^\\])(\\\\)*)\\\+;\1+;g;
s;\\\\;\\;g;
'
}