FHEM Forum

FHEM => Sonstiges => Thema gestartet von: betateilchen am 12 Mai 2014, 20:14:45

Titel: [patch] fhem.pl - (dringend wegen anstehender Notfallkorrektur)
Beitrag von: betateilchen am 12 Mai 2014, 20:14:45
Hallo Rudi,

könntest Du bitte baldmöglichst folgenden Patch in die fhem.pl aufnehmen?
Damit werden - Deinem Wunsch folgend - die Rückgabewerte beim Fileread verbessert.

Die Änderung ist Voraussetzung, damit ich eine heute dringend notwendig gewordene Korrektur der configDB einchecken kann.

Viele Grüße
Udo


Index: fhem.pl
===================================================================
--- fhem.pl (revision 5832)
+++ fhem.pl (working copy)
@@ -3791,8 +3791,7 @@
   my ($err, @ret);

   if(configDBUsed()) {
-    @ret = cfgDB_FileRead($fname);
-    $err = "$fname not found in the database." if(@ret==1 && !defined($ret[0]));
+    ($err, @ret) = cfgDB_FileRead($fname);

   } else {
     if(open(FH, $fname)) {
Titel: Antw:[patch] fhem.pl - (dringend wegen anstehender Notfallkorrektur)
Beitrag von: rudolfkoenig am 12 Mai 2014, 23:05:00
Eingecheckt.

Ich gehe davon aus, dass die PM von gestern damit auch erledigt ist.
Titel: Antw:[patch] fhem.pl - (dringend wegen anstehender Notfallkorrektur)
Beitrag von: betateilchen am 12 Mai 2014, 23:10:50
Danke.

Die email von gestern hatte ja den gleichen Inhalt und ist somit auch erledigt.
Zu dem Zeitpunkt gestern gab es aber das tatsächlich existierende Problem, das mich heute schon den halben Tag beschäftigt, noch gar nicht.

Irgendwie hattest Du recht mit Deinem Einwand neulich bezüglich der Zeilennummern und der unklaren Reihenfolge beim select. Noch bevor es da heute wirklich ein Problem gab, hatte ich gestern schon das gesamt Filehandling umgebaut.

Heute gab es dann das Problem - aber nicht bei den Dateien, sondern beim Einlesen der Konfiguration. Und offenbar ist das ein hauptsächlich mysql-spezifisches Verhalten. Bei meinen mysql Tests mit configDB trat das Fehlverhalten jedenfalls noch nie auf.

Seis drum - ab sofort wird die Konfiguration mit Zeilennummern weggeschrieben und beim Einlesen auch wieder entsprechend sortiert.