From adf05576b2e1602c26a1e3f65bafe707b3c8d1d6 Mon Sep 17 00:00:00 2001 From: Marcel Klehr Date: Tue, 17 Dec 2013 16:20:57 +0100 Subject: [PATCH] Don't crash if CHANGESET_REQ fails --- src/node/db/Pad.js | 6 +++++- src/node/handler/PadMessageHandler.js | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/node/db/Pad.js b/src/node/db/Pad.js index 180517d1f..4f0f268b7 100644 --- a/src/node/db/Pad.js +++ b/src/node/db/Pad.js @@ -203,7 +203,11 @@ Pad.prototype.getInternalRevisionAText = function getInternalRevisionAText(targe { curRev++; var cs = changesets[curRev]; - atext = Changeset.applyToAText(cs, atext, apool); + try{ + atext = Changeset.applyToAText(cs, atext, apool); + }catch(e) { + return callback(e) + } } callback(null); diff --git a/src/node/handler/PadMessageHandler.js b/src/node/handler/PadMessageHandler.js index 90053b416..774ebf081 100644 --- a/src/node/handler/PadMessageHandler.js +++ b/src/node/handler/PadMessageHandler.js @@ -1255,7 +1255,7 @@ function handleChangesetRequest(client, message) //build the requested rough changesets and send them back getChangesetInfo(padIds.padId, start, end, granularity, function(err, changesetInfo) { - ERR(err); + if(err) return console.error('Error while handling a changeset request for '+padIds.padId, err, message.data); var data = changesetInfo; data.requestID = message.data.requestID;