From e1a71a2722183f87d57e9c0c368c83c8293fa380 Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Wed, 14 Mar 2018 19:43:35 +0000 Subject: [PATCH] HttpUtils.pm: log a stacktrace on problematic close (Forum #85640) git-svn-id: https://svn.fhem.de/fhem/trunk@16407 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/01_FHEMWEB.pm | 2 +- fhem/FHEM/HttpUtils.pm | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/fhem/FHEM/01_FHEMWEB.pm b/fhem/FHEM/01_FHEMWEB.pm index 71688ed75..c78137ead 100644 --- a/fhem/FHEM/01_FHEMWEB.pm +++ b/fhem/FHEM/01_FHEMWEB.pm @@ -369,7 +369,7 @@ FW_Read($$) $i += 4; } - my $data = substr($hash->{BUF}, $i, $len); + #my $data = substr($hash->{BUF}, $i, $len); #for( my $i = 0; $i < $len; $i++ ) { # substr( $data, $i, 1, substr( $data, $i, 1, ) ^ substr($mask, $i% , 1) ); #} diff --git a/fhem/FHEM/HttpUtils.pm b/fhem/FHEM/HttpUtils.pm index 7b8615d4d..ade3ade0b 100644 --- a/fhem/FHEM/HttpUtils.pm +++ b/fhem/FHEM/HttpUtils.pm @@ -72,7 +72,14 @@ HttpUtils_Close($) my ($hash) = @_; delete($hash->{FD}); delete($selectlist{$hash}); - $hash->{conn}->close() if(defined($hash->{conn})); + if(defined($hash->{conn})) { # Forum #85640 + my $ref = eval { $hash->{conn}->can('close') }; + if($ref) { + $hash->{conn}->close(); + } else { + stacktrace(); + } + } delete($hash->{conn}); delete($hash->{hu_sslAdded}); delete($hash->{hu_filecount});