In der 5.4 lief folgender verkürzter Code problemlos:
Damit will ich eine Variable, die an mehreren Stellen und nicht nur durch webinput() geändert werden kann, kontrolliert ändern.
Das geht nun nicht mehr, spätestens ab Firmware 5.506. Der then-Zweig wird zwar ausgeführt, aber webinput() liefert dort nun nur noch einen Leerstring. Also change() triggert, aber das zweite webinput() ist leer.
Weder Changelog noch Doku geben ein Hinweis auf diese Änderung.
Ist es ein Bug oder ein Feature? Die Doku lässt da Freiraum, wobei ich die Rückgabe eines Leerstrings für fachlich falsch halte.
Wenn es so bleibt, ist es ärgerlich, denn es zwingt zur Einführung weiterer eigentlich temporärer/lokaler Variablen mit mehr Code:
Code:
if change(webinput(ID)) then var = webinput(ID); endif;
Das geht nun nicht mehr, spätestens ab Firmware 5.506. Der then-Zweig wird zwar ausgeführt, aber webinput() liefert dort nun nur noch einen Leerstring. Also change() triggert, aber das zweite webinput() ist leer.
Weder Changelog noch Doku geben ein Hinweis auf diese Änderung.
Ist es ein Bug oder ein Feature? Die Doku lässt da Freiraum, wobei ich die Rückgabe eines Leerstrings für fachlich falsch halte.
Wenn es so bleibt, ist es ärgerlich, denn es zwingt zur Einführung weiterer eigentlich temporärer/lokaler Variablen mit mehr Code:
Code:
var_webinput = webinput(ID) if change(var_webinput) then var = var_webinput; endif;


Kommentar