From 02872d3864784e76777e35b7e92f82e6630f2a8b Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Tue, 21 May 2013 13:25:51 +0000 Subject: [PATCH] AssignIoPort handles the Client as a list of regexps git-svn-id: svn://svn.code.sf.net/p/fhem/code/trunk@3204 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/fhem.pl | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/fhem/fhem.pl b/fhem/fhem.pl index 4f4cf5681..b49d82296 100755 --- a/fhem/fhem.pl +++ b/fhem/fhem.pl @@ -1384,10 +1384,12 @@ AssignIoPort($) my $cl = $defs{$p}{Clients}; $cl = $modules{$defs{$p}{TYPE}}{Clients} if(!$cl); - if((defined($cl) && $cl =~ m/:$hash->{TYPE}:/) && - $defs{$p}{NAME} ne $hash->{NAME}) { # e.g. RFR - $hash->{IODev} = $defs{$p}; - last; + if($cl && $defs{$p}{NAME} ne $hash->{NAME}) { # e.g. RFR + my @fnd = grep { $hash->{TYPE} =~ m/^$_$/; } split(":", $cl); + if(@fnd) { + $hash->{IODev} = $defs{$p}; + last; + } } } Log 3, "No I/O device found for $hash->{NAME}" if(!$hash->{IODev});