From 215c9f0f885f6c761349c363e16a9f9c2d7abde4 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 24 Dec 2018 12:28:11 +0300 Subject: [PATCH] fail better if Feeds.view() data failed encoding to JSON --- classes/feeds.php | 9 ++++++++- errors.php | 2 ++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/classes/feeds.php b/classes/feeds.php index 38819ec77..489ffd3c4 100755 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -563,7 +563,14 @@ class Feeds extends Handler_Protected { // this is parsed by handleRpcJson() on first viewfeed() to set cdm expanded, etc $reply['runtime-info'] = make_runtime_info(); - print json_encode($reply); + $reply_json = json_encode($reply); + + if (!$reply_json) { + $reply_json = json_encode(["error" => ["code" => 15, + "message" => json_last_error_msg()]]); + } + + print $reply_json; } diff --git a/errors.php b/errors.php index d9185307a..deadb1e24 100644 --- a/errors.php +++ b/errors.php @@ -38,6 +38,8 @@ $ERRORS[14] = __("Plugin not found"); + $ERRORS[15] = __("Encoding data as JSON failed"); + if ($_REQUEST['mode'] == 'js') { header("Content-Type: text/javascript; charset=UTF-8");