diff --git a/lib/MessageDb.js b/lib/MessageDb.js index 20b2c8c..380c5a1 100644 --- a/lib/MessageDb.js +++ b/lib/MessageDb.js @@ -67,7 +67,14 @@ MessageDb.prototype.addMessage = function(m, cb) { return; } - var key = messageKey(m.to); + var key; + try { + key = messageKey(m.to); + } catch (e) { + cb(new Error('Bad message')); + return; + }; + var value = m; this.db.put(key, value, cb); }; @@ -102,13 +109,19 @@ MessageDb.fromStorage = function(data) { }; MessageDb.prototype.getMessages = function(to, lower_ts, upper_ts, cb) { - var list = []; + var list = [], + opts; lower_ts = lower_ts || 1; - var opts = { - start: messageKey(to, lower_ts), - end: messageKey(to, upper_ts), - // limit: limit, TODO - reverse: false, + try { + opts = { + start: messageKey(to, lower_ts), + end: messageKey(to, upper_ts), + // limit: limit, TODO + reverse: false, + }; + } catch (e) { + cb(new Error('Bad message range')); + return; }; db.createReadStream(opts)