Der Befehl "shutdown" akzeptiert ja einen übergebbaren Exit-Code, den dann der Prozess zurück gibt. Das funktioniert nicht in dem Fall eines "delayed Shutdowns". Der Exit Code ist dann immer 0.
sub
CommandShutdown($$;$$)
{
my ($cl, $param, $cmdName, $final) = @_;
Log 0, "Server $param";
my $exitValue = 0;
if($param && $param =~ m/^(\d+)$/) {
$exitValue = $1;
$param = "";
}
return "Usage: shutdown [restart|exitvalue]"
if($param && $param ne "restart");
return if(!$final && DelayedShutdown($cl, $param));
Das liegt meiner Meinung nach daran, dass der $param dem "DelayedShutdown" nicht korrekt übergeben wird, da $param auf den leeren String gesetzt wird nachdem der Exit Code heraus geparst wurde.
Danke fuer den Hinweis, habs gefixt.
Betroffen sind Benutzer, die eins der folgenden Module verwenden:
DbLog HMCCURPCPROC SMAEM SSCam alexa gassistant tradfri
Danke, funzt jetzt!