aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Christian Hesse <mail@eworm.de>2023-02-02 11:05:16 +0100
committerGravatar Christian Hesse <mail@eworm.de>2023-02-02 11:20:14 +0100
commit978c03131a905c1a6892c9d2fbb049256af2c263 (patch)
tree7a10ac2ab6d280b03d508fec42756c8341bc8139
parentb794d98cbb513f7ef49ffd4e19101e4580e96949 (diff)
global-functions: $WaitForFile: use delay instead of iterations
-rw-r--r--global-functions11
-rw-r--r--telegram-chat2
2 files changed, 7 insertions, 6 deletions
diff --git a/global-functions b/global-functions
index 2f57fae..d2f911e 100644
--- a/global-functions
+++ b/global-functions
@@ -1213,20 +1213,21 @@
# wait for file to be available
:set WaitForFile do={
- :local FileName [ :tostr $1 ];
- :local Iter [ :tonum $2 ];
+ :local FileName [ :tostr $1 ];
+ :local WaitTime [ :totime $2 ];
:global CleanFilePath;
:global EitherOr;
:set FileName [ $CleanFilePath $FileName ];
- :local I 0;
+ :local I 1;
+ :local Delay ([ :totime [ $EitherOr $WaitTime 2s ] ] / 20);
:while ([ :len [ /file/find where name=$FileName ] ] = 0) do={
- :if ($I > [ $EitherOr $Iter 20 ]) do={
+ :if ($I >= 20) do={
:return false;
}
- :delay 100ms;
+ :delay $Delay;
:set I ($I + 1);
}
:return true;
diff --git a/telegram-chat b/telegram-chat
index 93d4294..2d3cee6 100644
--- a/telegram-chat
+++ b/telegram-chat
@@ -103,7 +103,7 @@ $WaitFullyConnected;
$LogPrintExit2 info $0 ("Running command: " . $Text) false;
:exec script=(":do {\n" . $Text . "\n} on-error={ :execute script=\":put\" file=" . $File . ".failed };" . \
":execute script=\":put\" file=" . $File . ".done") file=$File;
- :if ([ $WaitForFile ($File . ".done.txt") 200 ] = false) do={
+ :if ([ $WaitForFile ($File . ".done.txt") 20s ] = false) do={
:set State "The command did not finish, still running in background.\n\n";
}
:if ([ :len [ /file/find where name=($File . ".failed.txt") ] ] > 0) do={