From ed5b086be1efe73032192f21e212daff8add13aa Mon Sep 17 00:00:00 2001 From: justme1968 Date: Sat, 21 Nov 2015 19:01:37 +0000 Subject: [PATCH] 30_HUEBridge.pm: eval decode_json and from_json to avoid problems with malformed input git-svn-id: svn://svn.code.sf.net/p/fhem/code/trunk@9957 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/30_HUEBridge.pm | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/fhem/FHEM/30_HUEBridge.pm b/fhem/FHEM/30_HUEBridge.pm index c0f128503..d9c16ddae 100644 --- a/fhem/FHEM/30_HUEBridge.pm +++ b/fhem/FHEM/30_HUEBridge.pm @@ -830,15 +830,16 @@ HUEBridge_HTTP_Call($$$;$) return undef; } -# try { -# from_json($ret); -# } catch { -# return undef; -# } + my $decoded; + if( HUEBridge_isFritzBox() ) { + $decoded = eval { decode_json($ret) }; + Log3 $name, 2, "$name: json error: $@ in $ret" if( $@ ); + } else { + $decoded = eval { from_json($ret) }; + Log3 $name, 2, "$name: json error: $@ in $ret" if( $@ ); + } - return HUEBridge_ProcessResponse($hash,decode_json($ret)) if( HUEBridge_isFritzBox() ); - - return HUEBridge_ProcessResponse($hash,from_json($ret)); + return HUEBridge_ProcessResponse($hash, $decoded); } sub