summaryrefslogtreecommitdiffstats
path: root/lib/trakt.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/trakt.js')
-rw-r--r--lib/trakt.js23
1 files changed, 14 insertions, 9 deletions
diff --git a/lib/trakt.js b/lib/trakt.js
index 27a8ca2..921c56e 100644
--- a/lib/trakt.js
+++ b/lib/trakt.js
@@ -79,8 +79,8 @@ var getRequest = function (action, opts, options, callback) {
try {
var json = JSON.parse(result);
} catch(e) {
- self.emit('error', e)
- return callback(e)
+ self.emit('error', e);
+ return callback(e);
}
if (res.statusCode !== 200) {
var err = new Error('Trakt responded ' + res.statusCode + ' - ' + Http.STATUS_CODES[res.statusCode]);
@@ -128,14 +128,19 @@ var postRequest = function (action, opts, options, callback) {
result += chunk;
})
.on('end', function () {
- var json = JSON.parse(result);
- if (res.statusCode !== 200) {
- var err = new Error('Trakt responded ' + res.statusCode + ' - ' + Http.STATUS_CODES[res.statusCode]);
- self.emit('error', err, json);
- return callback(err, json);
+ try {
+ var json = JSON.parse(result);
+ if (res.statusCode !== 200) {
+ var err = new Error('Trakt responded ' + res.statusCode + ' - ' + Http.STATUS_CODES[res.statusCode]);
+ self.emit('error', err, json);
+ return callback(err, json);
+ }
+ self.emit('data', json);
+ return callback(null, json);
+ } catch (e) {
+ self.emit('error', e, result);
+ return callback(e);
}
- self.emit('data', json);
- return callback(null, json);
})
.on('error', function (err) {
self.emit('error', err);