From b76aae03022c790d670f1e58b7e615820f3047d6 Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Thu, 3 Oct 2013 09:32:54 +0000 Subject: [PATCH] eventTypes: more checks for invalid input file and events git-svn-id: svn://svn.code.sf.net/p/fhem/code/trunk@3994 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/91_eventTypes.pm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/fhem/FHEM/91_eventTypes.pm b/fhem/FHEM/91_eventTypes.pm index bb802ff40..ac89e46d5 100755 --- a/fhem/FHEM/91_eventTypes.pm +++ b/fhem/FHEM/91_eventTypes.pm @@ -39,6 +39,10 @@ eventTypes_Define($$) while(my $l = <$fh>) { chomp($l); my @a = split(" ", $l, 3); + if(@a != 3) { + Log3 undef, 2, "eventTypes: $f: bogus line $l"; + next; + } $modules{eventTypes}{ldata}{$a[1]}{$a[2]} = $a[0]; } close($fh); @@ -60,6 +64,7 @@ eventTypes_Notify($$) my $t = $eventSrc->{TYPE}; my $n = $eventSrc->{NAME}; + return if(!defined($n) || !defined($t)); my $ret = ""; foreach my $oe (@{$eventSrc->{CHANGED}}) { @@ -67,6 +72,7 @@ eventTypes_Notify($$) my $ne = $oe; $ne =~ s/\b-?\d*\.?\d+\b/.*/g; $ne =~ s/set_\d+/set_.*/; # HM special :/ + next if(!defined($ne) || $ne eq ""); Log3 $ln, 4, "$ln: $t $n $oe -> $ne"; $modules{eventTypes}{ldata}{$n}{$ne}++; }