From c8c2866087bcac8ce93a571afbd8c2fa5d22a8de Mon Sep 17 00:00:00 2001 From: webzwo0i Date: Thu, 20 Feb 2014 16:33:42 +0100 Subject: fix crash if disconnect happens for sessions that have messages queued --- src/node/handler/PadMessageHandler.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/node/handler/PadMessageHandler.js b/src/node/handler/PadMessageHandler.js index 774ebf08..75271021 100644 --- a/src/node/handler/PadMessageHandler.js +++ b/src/node/handler/PadMessageHandler.js @@ -588,6 +588,14 @@ function handleUserChanges(data, cb) messageLogger.warn("Dropped message, USER_CHANGES Message has no changeset!"); return cb(); } + //TODO: this might happen with other messages too => find one place to copy the session + //and always use the copy. atm a message will be ignored if the session is gone even + //if the session was valid when the message arrived in the first place + if(!sessioninfos[client.id]) + { + messageLogger.warn("Dropped message, disconnect happened in the mean time"); + return cb(); + } //get all Vars we need var baseRev = message.data.baseRev; -- cgit v1.2.3