From e5e6ee9bb3e850655ec99256b8814c2b272938a9 Mon Sep 17 00:00:00 2001 From: mgernoth <> Date: Wed, 10 May 2017 09:27:09 +0000 Subject: [PATCH] 00_HMUARTLGW.pm: check if FD is defined before using it git-svn-id: https://svn.fhem.de/fhem/trunk@14240 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/00_HMUARTLGW.pm | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/fhem/FHEM/00_HMUARTLGW.pm b/fhem/FHEM/00_HMUARTLGW.pm index 5f04cca9b..9c2e434af 100644 --- a/fhem/FHEM/00_HMUARTLGW.pm +++ b/fhem/FHEM/00_HMUARTLGW.pm @@ -1675,16 +1675,18 @@ sub HMUARTLGW_CheckCmdResp($) #The data we wait for might have already been received but never #read from the FD. Do a last check now and process new data. - my $rin = ''; - vec($rin, $hash->{FD}, 1) = 1; - my $n = select($rin, undef, undef, 0); - if ($n > 0) { - Log3($hash, HMUARTLGW_getVerbLvl($hash, undef, undef, 5), - "HMUARTLGW ${name} HMUARTLGW_CheckCmdResp: FD is readable, this might be the data we are looking for!"); - #We will be back very soon! - InternalTimer(gettimeofday()+0, "HMUARTLGW_CheckCmdResp", $hash, 0); - HMUARTLGW_Read($hash); - return; + if (defined($hash->{FD})) { + my $rin = ''; + vec($rin, $hash->{FD}, 1) = 1; + my $n = select($rin, undef, undef, 0); + if ($n > 0) { + Log3($hash, HMUARTLGW_getVerbLvl($hash, undef, undef, 5), + "HMUARTLGW ${name} HMUARTLGW_CheckCmdResp: FD is readable, this might be the data we are looking for!"); + #We will be back very soon! + InternalTimer(gettimeofday()+0, "HMUARTLGW_CheckCmdResp", $hash, 0); + HMUARTLGW_Read($hash); + return; + } } if ($hash->{DevState} == HMUARTLGW_STATE_SEND) {