From 3bc8dce7191b60fa5e8403da69ee6d3e5815385b Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Thu, 23 Apr 2015 05:55:53 +0000 Subject: [PATCH] fhem.pl: enable IODev search in devspec2array (Forum #36550) git-svn-id: https://svn.fhem.de/fhem/trunk@8463 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/fhem.pl | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/fhem/fhem.pl b/fhem/fhem.pl index 31f3a0f29..4ebbc693e 100755 --- a/fhem/fhem.pl +++ b/fhem/fhem.pl @@ -1088,9 +1088,10 @@ devspec2array($) $val = $attr{$d}{$n} if($attr{$d}); } $val="" if(!defined($val)); + $val = $val->{NAME} if(ref($val) eq 'HASH' && $val->{NAME}); # IODev my $lre = ($n eq "room" ? "(^|,)($re)(,|\$)" : "^($re)\$"); - my $valReNum = (looks_like_number($val) && looks_like_number($re) ? 1:0); + my $valReNum =(looks_like_number($val) && looks_like_number($re) ? 1:0); eval { # a bad regexp is deadly if(($op eq "=" && $val =~ m/$lre/s) || ($op eq "!=" && $val !~ m/$lre/s) || @@ -2011,7 +2012,9 @@ CommandList($$) if($defs{$sdev}) { if(defined($defs{$sdev}{$arg[1]})) { - $str .= sprintf("%-20s %s\n", $sdev, $defs{$sdev}{$arg[1]}); + my $val = $defs{$sdev}{$arg[1]}; + $val = $val->{NAME} if(ref($val) eq 'HASH' && $val->{NAME}); + $str .= sprintf("%-20s %s\n", $sdev, $val); } elsif($defs{$sdev}{READINGS} && defined($defs{$sdev}{READINGS}{$arg[1]})) {