diff --git a/fhem/FHEM/Color.pm b/fhem/FHEM/Color.pm index 502a76cdf..fe6db8c7c 100644 --- a/fhem/FHEM/Color.pm +++ b/fhem/FHEM/Color.pm @@ -118,23 +118,22 @@ ChannelsToRgb(@) { sub ChannelsToBrightness(@) { my (@channels) = @_; - + my $max = 0; foreach my $value (@channels) { $max = $value if ($max < $value); } - - return { - bri => 0, - channels => \(255 x @channels), - } unless ($max > 0); - + my @bri = (); - my $norm = 255/$max; - foreach my $value (@channels) { - push @bri,int($value*$norm); + if( $max == 0) { + @bri = (0) x @channels; + } else { + my $norm = 255/$max; + foreach my $value (@channels) { + push @bri,int($value*$norm); + } } - + return { bri => int($max/2.55), channels => \@bri,