Hallo zusammen
seit ein paar Tagen beobachte ich häufiger Abstürze mit einem Eintrag im Log:
Negative offset to vec in lvalue context at fhem.pl line 639.
Die Zeile 639 in der fhem.pl lautet:
vec($rin, $hash->{FD}, 1) = 1
Hat Jemand ähnliche Erfahrungen gemacht und wenn ja, wie lautet die Abhilfe?
Danke!
Gruss
Sailor
Vermutlich hat jemand vorsorglich ein $hash->{FD} auf -1 gesetzt.
Kannst du bitte vor Zeile 639 Folgendes einfuegen, und testen?
if($hash->{FD} < 0) {
Log 1, "ERROR: negative FD in $hash->{NAME}"
continue;
}
... oder jemand hat perl 5.26.x im Einsatz (genaue Version weiß ich gerade nicht), da gibt es ein (bekanntes) Problem, das genau zu dieser Fehlermeldung führt.
Hallo Rudi
Danke für deine schnelle Antwort
Zitat von: rudolfkoenig am 17 März 2018, 16:15:59
Vermutlich hat jemand vorsorglich ein $hash->{FD} auf -1 gesetzt.
Wer macht denn so was? ;)
Im Ernst: Wozu ist "
$hash->{FD}" überhaupt da?
Zitat von: rudolfkoenig am 17 März 2018, 16:15:59
Kannst du bitte vor Zeile 639 Folgendes einfuegen, und testen?
if($hash->{FD} < 0) {
Log 1, "ERROR: negative FD in $hash->{NAME}"
continue;
}
Habe ich gemacht und so weit so gut... Leider bekomme ich eine Ausgabe beim Start von fhem in der Konsole
Job for fhem.service failed. See 'systemctl status fhem.service' and 'journalctl -xn' for details.
und fhem laesst sich nicht starten.
Ein entfernen des o.g. Code-Fragments macht fhem wieder startfähig.
Gruss
Sailor
Hallo betateilchen
Zitat von: betateilchen am 17 März 2018, 19:34:59
... oder jemand hat perl 5.26.x im Einsatz (genaue Version weiß ich gerade nicht), da gibt es ein (bekanntes) Problem, das genau zu dieser Fehlermeldung führt.
Heisst das ein "Update" von perl würde das Problem lösen?
Gruss
Sailor
Zitatund fhem laesst sich nicht starten.
Sorry, ein ; hat gefehlt:
if($hash->{FD} < 0) {
Log 1, "ERROR: negative FD in $hash->{NAME}";
continue;
}
Zitat von: rudolfkoenig am 18 März 2018, 12:34:00
Sorry, ein ; hat gefehlt:
Oh Mann, hätte ich auch selbst drauf kommen können! :o
Ok, ich melde mich, sobald die Fehlermeldung wieder auftritt.
Gruss
Sailor
Treffer!
2018.03.20 10:39:22.893 1: ERROR: negative FD in GOOGLECAST-TR_Googlecast
Can't "continue" outside a when block at fhem.pl line 641
Habe es gleich ins forum plaziert: https://forum.fhem.de/index.php/topic,45505.msg784094.html#msg784094 (https://forum.fhem.de/index.php/topic,45505.msg784094.html#msg784094)
Gruss
Sailor
ZitatCan't "continue" outside a when block at fhem.pl line 641
Sorry, das haette next heissen sollen statt continue.
Zitat von: rudolfkoenig am 20 März 2018, 14:56:18
Sorry, das haette next heissen sollen statt continue.
Korrigiert
if($hash->{FD} < 0) {
Log 1, "ERROR: negative FD in $hash->{NAME}";
next;
}
Gruss
Sailor