From 98cfca3adda0b43df56e76c6332bc19ee7ff5a87 Mon Sep 17 00:00:00 2001 From: Adhidarma Hadiwinoto <me@adhisimon.org> Date: Mon, 31 Oct 2016 21:51:09 +0700 Subject: [PATCH] more try catch to debug --- matrix-util.js | 45 +++++++++++++++++++++++++++++++-------------- 1 file changed, 31 insertions(+), 14 deletions(-) diff --git a/matrix-util.js b/matrix-util.js index 55b205b..76a5046 100644 --- a/matrix-util.js +++ b/matrix-util.js @@ -127,26 +127,43 @@ MatrixUtil.prototype._updateLastResponseTime = function(partner) { let matrix = this.matrix; let logger = this.logger; - if (!matrix.buddies[partner]['last_outgoing']) { - logger.verbose('No outgoing yet, skip updateLastResponseTime'); - return; + try { + if (!matrix.buddies[partner]['last_outgoing']) { + logger.verbose('No outgoing yet, skip updateLastResponseTime'); + return; + } + + if (!matrix.buddies[partner]['last_outgoing']['last_update_ts']) { + logger.verbose('No outgoing timestamp yet, skip updateLastResponseTime'); + return; + } + } + catch(e) { + logger.warn('Exception when preparing updateLastResponseTime', {err: e}); } - if (!matrix.buddies[partner]['last_outgoing']['last_update_ts']) { - logger.verbose('No outgoing timestamp yet, skip updateLastResponseTime'); - return; + try { + if ( + matrix.buddies[partner]['last_incoming'] + && (Number(matrix.buddies[partner]['last_incoming']['last_update_ts']) > Number(matrix.buddies[partner]['last_outgoing']['last_update_ts'])) + ) { + return; + } + } + catch(e) { + logger.warn('Exception when checking if last_incoming > last_outgoing', {err: e}); } - if ( - matrix.buddies[partner]['last_incoming'] - && (Number(matrix.buddies[partner]['last_incoming']['last_update_ts']) > Number(matrix.buddies[partner]['last_outgoing']['last_update_ts'])) - ) { - return; + + try { + let delta = Date.now() - Number(matrix.buddies[partner]['last_outgoing']['last_update_ts']); + logger.verbose('Response time in ' + delta + 'ms'); + matrix.buddies[partner]['last_response_time'] = Math.round(delta/1000); + } + catch(e) { + logger.warn('Exception when calculating last_response_time', {err: e}); } - let delta = Date.now() - Number(matrix.buddies[partner]['last_outgoing']['last_update_ts']); - logger.verbose('Response time in ' + delta + 'ms'); - matrix.buddies[partner]['last_response_time'] = Math.round(delta/1000); } MatrixUtil.prototype._updateLastMessage = function(partner, msg, direction) { -- 1.9.0