From ea58f72b7862f8651a5f1d9ebf040f63e2ac0691 Mon Sep 17 00:00:00 2001 From: Gregor MacLennan Date: Sun, 7 Dec 2014 09:17:57 -0800 Subject: [PATCH 1/2] Parse results for errors --- lib/blitline.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/blitline.js b/lib/blitline.js index c27d0a5..6842082 100755 --- a/lib/blitline.js +++ b/lib/blitline.js @@ -40,7 +40,13 @@ module.exports = function() { }); res.resume(); return res.on("end", function() { - return callback(JSON.parse(result.join())); + var data = JSON.parse(result.join('')); + var error; + data.results.forEach(function(result) { + // Will only return the error for the last job for multiple jobs. + if (result.error) error = new Error(result.error); + }); + return callback(error, data); }); }); From 70510e5072ab82de4977502f66d63f29f4cb29ca Mon Sep 17 00:00:00 2001 From: Gregor MacLennan Date: Sun, 7 Dec 2014 09:40:15 -0800 Subject: [PATCH 2/2] Catch errors parsing JSON --- lib/blitline.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/blitline.js b/lib/blitline.js index 6842082..c06b055 100755 --- a/lib/blitline.js +++ b/lib/blitline.js @@ -40,7 +40,12 @@ module.exports = function() { }); res.resume(); return res.on("end", function() { - var data = JSON.parse(result.join('')); + var data; + try { + data = JSON.parse(result.join('')); + } catch (e) { + return callback(e); + } var error; data.results.forEach(function(result) { // Will only return the error for the last job for multiple jobs.