diff --git a/global-functions.rsc b/global-functions.rsc index 83a69335..cd18cd6f 100644 --- a/global-functions.rsc +++ b/global-functions.rsc @@ -1377,20 +1377,20 @@ :continue; } + :local RequirePolicy ([ $ParseKeyValueStore [ $Grep $SourceNew ("\23 requires policy, ") ] ]->"policy"); + :if ([ :len $RequirePolicy ] > 0) do={ + :set ($ScriptVal->"policy") [ :toarray delimiter=";" $RequirePolicy ]; + $LogPrintOnce debug $0 ("New policy for script '" . $ScriptVal->"name" . "': " . $RequirePolicy); + } + $LogPrint info $0 ("Updating script: " . $ScriptVal->"name"); - /system/script/set owner=($ScriptVal->"name") \ + /system/script/set owner=($ScriptVal->"name") policy=($ScriptVal->"policy") \ source=[ $IfThenElse ($ScriptUpdatesCRLF = true) $SourceCRLF $SourceNew ] $Script; :if ($ScriptVal->"name" = "global-config" || \ $ScriptVal->"name" = "global-functions" || \ $ScriptVal->"name" ~ ("^(global-functions\\.d|mod)/.")) do={ :set ReloadGlobal true; } - - :local RequirePolicy ([ $ParseKeyValueStore [ $Grep $SourceNew ("\23 requires policy, ") ] ]->"policy"); - :if ([ :len $RequirePolicy ] > 0 && $RequirePolicy != [ :tostr ($ScriptVal->"policy") ]) do={ - $LogPrintOnce info $0 ("Updating policy for script: " . $ScriptVal->"name"); - /system/script/set policy=[ :toarray delimiter=";" $RequirePolicy ] $Script; - } } :if ($ReloadGlobal = true) do={