Separate --safe from other update types

This commit is contained in:
Ben Peddell 2017-09-05 07:57:52 +10:00
parent d21a4e004e
commit e6db41d747

View File

@ -1639,11 +1639,12 @@ doUpdate() {
local use_service=
local use_upstart=
local force=
local safeupdate=
for arg in "$@"; do
case "$arg" in
--force) appupdate=1; force=1; ;;
--safe) updatetype=safe; ;;
--safe) safeupdate=1; ;;
--warn) updatetype=warn; ;;
--ifempty) updatetype=ifempty; ;;
--warnreason=*) warnreason="${arg#--warnreason=}"; updatetype=warn; ;;
@ -1789,7 +1790,21 @@ doUpdate() {
fi
if isTheServerRunning; then
if [ "$updatetype" == "safe" ]; then
if [ "$updatetype" == "warn" ]; then
if ! doWarn update; then
return 1
fi
elif [ "$updatetype" == "ifempty" ]; then
numplayers=$(( $(numPlayersConnected) + 0 ))
if (( numplayers != 0 )); then
logprint "${numplayers} players are still connected"
return 1
fi
fi
if [ -n "$safeupdate" ]; then
logprint "Saving world"
doSaveWorld
saverootdir="${arkserverroot}/${arkserverdir}/Saved"
savedir="$(getSavedArksDirectory "${saverootdir}")"
mapname="$(getServerMapName)"
@ -1815,16 +1830,6 @@ doUpdate() {
logprint "Save file newer than 1 minute. Performing an update."
fi
fi
elif [ "$updatetype" == "warn" ]; then
if ! doWarn update; then
return 1
fi
elif [ "$updatetype" == "ifempty" ]; then
numplayers=$(( $(numPlayersConnected) + 0 ))
if (( numplayers != 0 )); then
logprint "${numplayers} players are still connected"
return 1
fi
fi
fi