From f21831bffb8e76c93d4b7f7a1a756ba3ca00ff5a Mon Sep 17 00:00:00 2001 From: Pedram Date: Sat, 14 Apr 2018 19:46:16 +0430 Subject: [PATCH] fixing JSON parse error with simple try/catch --- lib/parse.js | 7 ++++++- src/parse.coffee | 5 ++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/parse.js b/lib/parse.js index 9b4ff31..e168f71 100644 --- a/lib/parse.js +++ b/lib/parse.js @@ -94,7 +94,12 @@ line = line.replace(/^(".+")=/, '$1:'); line = line.replace(/^(.+):\d+,/, '$1:0.'); line = line.replace(/"@.*$/, '"'); - return JSON.parse("{" + line + "}"); + try{ + return JSON.parse("{" + line + "}"); + }catch(e) + { + return {}; + } }; return input.split('\n').map(to_item).reduce(to_object); }; diff --git a/src/parse.coffee b/src/parse.coffee index cce00d6..1e99d95 100644 --- a/src/parse.coffee +++ b/src/parse.coffee @@ -54,7 +54,10 @@ exports.machinereadable_list = (input) -> line = line.replace(/^(.+):\d+,/, '$1:0.') line = line.replace(/"@.*$/, '"') - return JSON.parse("{#{line}}") + try + return JSON.parse("{#{line}}") + catch e + return {} return input.split('\n').map(to_item).reduce(to_object)