From 301ad4b3e570a362dd8f7b7fe4448d7638803509 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Sun, 27 Jun 2021 20:40:22 +0200 Subject: global-functions: $ScriptLock: allow to return... ... with true instead of breaking with error. --- global-functions | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/global-functions b/global-functions index 63c0e21..d15d176 100644 --- a/global-functions +++ b/global-functions @@ -904,13 +904,18 @@ # lock script against multiple invocation :set ScriptLock do={ - :global LogPrintExit2; + :local Script [ :tostr $1 ]; + :local DoReturn $2; - :local Script [ :tostr $1 ]; + :global IfThenElse; + :global LogPrintExit2; :if ([ :len [ / system script job find where script=$Script ] ] > 1) do={ - $LogPrintExit2 info $0 ("Script " . $Script . " started more than once... Aborting.") true; + $LogPrintExit2 info $0 ("Script " . $Script . " started more than once... Aborting.") \ + [ $IfThenElse ($DoReturn = true) false true ]; + :return true; } + :return false; } # send notification via e-mail - expects at lease two string arguments -- cgit v1.2.3-54-g00ecf