From 78ef0f87f2992502098313ba710bf41e9c24c0c7 Mon Sep 17 00:00:00 2001 From: KernSani Date: Fri, 4 Jan 2019 13:55:38 +0000 Subject: [PATCH] 98_freezemon.pm: Fix of the fix of a bug which could cause FHEM to crash at startup in rare cases git-svn-id: https://svn.fhem.de/fhem/trunk@18133 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/98_freezemon.pm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/fhem/FHEM/98_freezemon.pm b/fhem/FHEM/98_freezemon.pm index 3d29c611a..357e0ffae 100644 --- a/fhem/FHEM/98_freezemon.pm +++ b/fhem/FHEM/98_freezemon.pm @@ -321,7 +321,7 @@ sub freezemon_ProcessTimer($) { } # prioQueues are not unique, so we are using the old way... - if ( $hash->{helper}{apptime} ne "" ) { + if ( $hash->{helper}{apptime} && $hash->{helper}{apptime} ne "" ) { my @olddev = split( " ", $hash->{helper}{apptime} ); my @newdev = split( " ", freezemon_apptime($hash) ); @@ -707,7 +707,7 @@ sub freezemon_Attr($) { if ( $aVal ne 0 ) { freezemon_install_callFn_wrapper($hash); } - elsif ( exists ($hash->{helper}{mycallFn} ) ) { + elsif ( defined ($hash->{helper}{mycallFn} ) ) { Log3( "", 0, "[Freezemon] $name: Unwrapping CallFn" ); { no warnings; @@ -722,7 +722,7 @@ sub freezemon_Attr($) { if ( $aVal ne 0 ) { freezemon_install_analyzeCommand_wrapper($hash); } - elsif ( exists( $hash->{helper}{analyzeCommand} ) ) { + elsif ( defined ( $hash->{helper}{analyzeCommand} ) ) { Log3( "", 0, "[Freezemon] $name: Unwrapping analyzeCommand" ); { #no warnings; @@ -1047,7 +1047,7 @@ sub freezemon_install_analyzeCommand_wrapper($;$) { $name = "FreezeMon" unless defined($name); my $status = AnalyzeCommand( "freezemon", "" ); if ( !defined($status) || $status ne "already wrapped" ) { - $hash->{helper}{mycallFn} = \&AnalyzeCommand; + $hash->{helper}{AnalyzeCommand} = \&AnalyzeCommand; Log3( "", 3, "[Freezemon] $name: Wrapping AnalyzeCommand" ); { no warnings;