From 9c051d729f6e0dd65bb9ca514d519e36e900b1fd Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Wed, 1 Jun 2016 20:55:36 +0000 Subject: [PATCH] 10_ZWave.pm: fix delete bug (Forum #53389) git-svn-id: https://svn.fhem.de/fhem/trunk@11591 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/10_ZWave.pm | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/fhem/FHEM/10_ZWave.pm b/fhem/FHEM/10_ZWave.pm index cb0052a1a..81b4c64b7 100755 --- a/fhem/FHEM/10_ZWave.pm +++ b/fhem/FHEM/10_ZWave.pm @@ -3532,12 +3532,17 @@ ZWave_getHash($$$) my $version = $hash->{".vclasses"}{$cl}; if(defined($version) && ($type eq "get" || $type eq "set")) { - map { - my $zv = $zwave_classVersion{$_}; - delete $ptr->{$_} if(!$version || - ($zv && (($zv->{min} && $zv->{min} > $version) || - ($zv->{max} && $zv->{max} < $version)))); - } keys %{$ptr}; + my %h; + if($version > 0) { + map { + my $zv = $zwave_classVersion{$_}; + if(!$zv || ((!$zv->{min} || $zv->{min} <= $version) && + (!$zv->{max} || $zv->{max} >= $version))) { + $h{$_} = $ptr->{$_}; + } + } keys %{$ptr}; + } + $ptr = \%h; } return $ptr;