FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: olwaldi am 27 August 2026, 16:30:33

Titel: Merkwürdige Seiteneffekte bei Nutzung des Variablennamens $source
Beitrag von: olwaldi am 27 August 2026, 16:30:33
Bastel gerade daran, Software-Abhängigkeiten in meinen Skripten von meiner alten Logitech Harmony zu entfernen, um irgendwann auf eine Sofabaton U3 umsteigen zu können. Dazu habe ich einige meiner Routinen in 99_myUtils.pm geändert, und dann nach einem Neuladen ganz merkwürdige mir unerklärliche Fehlermeldungen bekommen. Z.B. waren scheinbar noch alte Routinen aktiv, oder Variablen-Werte waren je nach Codestelle mal verfügbar, mal nicht.

Ich habe sehr lange experimentiert, woran es liegen könnte. Die Ursache war, daß ich in meinen Routinen die lokal Variable namens $source (oder auch $target) verwendet habe. Alle Merkwürdigkeiten sind verschwunden, nachdem ich $source in $avsource umbenannt habe. $source wird wohl intern von notify verwendet.

Sicherheitshalber habe ich fhem auch mal neu gestartet, um ganz sicherzugehen, daß "Reste" meiner alten Routinen jetzt weg sind.

Ich nutze aber auch noch andere Variablennamen, die "kritisch" sein könnten, z.B. $event (da ist wohl nur $EVENT benutzt).

Grüßle, Michael
Titel: Aw: Merkwürdige Seiteneffekte bei Nutzung des Variablennamens $source
Beitrag von: Guybrush am 27 August 2026, 16:39:45
wenn du innerhalb eines Blocks eigene Variablen nutzen willst, die auch global definiert sind, dann müsstest du den block mit {} klammern und dort die variable über my $variable definieren. dann gelten die Variablen nur innerhalb dieses Blocks und außerhalb wieder die global definierten. Meinst du das?