FHEM Forum

FHEM => Sonstiges => Thema gestartet von: vbs am 09 Juli 2019, 09:23:01

Titel: shutdown: Exit Code bei DelayedShutdown wird ignoriert
Beitrag von: vbs am 09 Juli 2019, 09:23:01
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.
Titel: Antw:shutdown: Exit Code bei DelayedShutdown wird ignoriert
Beitrag von: rudolfkoenig am 09 Juli 2019, 11:46:14
Danke fuer den Hinweis, habs gefixt.
Betroffen sind Benutzer, die eins der folgenden Module verwenden:
DbLog HMCCURPCPROC SMAEM SSCam alexa gassistant tradfri

Titel: Antw:shutdown: Exit Code bei DelayedShutdown wird ignoriert
Beitrag von: vbs am 10 Juli 2019, 09:20:06
Danke, funzt jetzt!