[macOS] use shlock instead of flock in fetch-params
This commit is contained in:
@@ -2,7 +2,11 @@
|
|||||||
|
|
||||||
set -eu
|
set -eu
|
||||||
|
|
||||||
PARAMS_DIR="$HOME/.zcash-params"
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||||
|
PARAMS_DIR="$HOME/Library/Application Support/ZcashParams"
|
||||||
|
else
|
||||||
|
PARAMS_DIR="$HOME/.zcash-params"
|
||||||
|
fi
|
||||||
|
|
||||||
SPROUT_PKEY_NAME='sprout-proving.key'
|
SPROUT_PKEY_NAME='sprout-proving.key'
|
||||||
SPROUT_VKEY_NAME='sprout-verifying.key'
|
SPROUT_VKEY_NAME='sprout-verifying.key'
|
||||||
@@ -125,12 +129,20 @@ EOF
|
|||||||
# Use flock to prevent parallel execution.
|
# Use flock to prevent parallel execution.
|
||||||
function lock() {
|
function lock() {
|
||||||
local lockfile=/tmp/fetch_params.lock
|
local lockfile=/tmp/fetch_params.lock
|
||||||
# create lock file
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||||
eval "exec 200>/$lockfile"
|
if shlock -f ${lockfile} -p $$; then
|
||||||
# acquire the lock
|
return 0
|
||||||
flock -n 200 \
|
else
|
||||||
&& return 0 \
|
return 1
|
||||||
|| return 1
|
fi
|
||||||
|
else
|
||||||
|
# create lock file
|
||||||
|
eval "exec 200>/$lockfile"
|
||||||
|
# acquire the lock
|
||||||
|
flock -n 200 \
|
||||||
|
&& return 0 \
|
||||||
|
|| return 1
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
function exit_locked_error {
|
function exit_locked_error {
|
||||||
|
|||||||
Reference in New Issue
Block a user