From b2a723e57fc4ae9eabec62496af85cd6a0f33ad1 Mon Sep 17 00:00:00 2001 From: John McLear Date: Fri, 29 May 2020 12:35:00 +0100 Subject: [PATCH] editor: Don't allow edits during reconnecting Not the best fix but better than the current status quo. --- src/static/js/pad.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/static/js/pad.js b/src/static/js/pad.js index b5e772d15..1e5349258 100644 --- a/src/static/js/pad.js +++ b/src/static/js/pad.js @@ -173,8 +173,20 @@ function sendClientReady(isReconnect, messageType) //this is a reconnect, lets tell the server our revisionnumber if(isReconnect == true) { + // Hammer approach for now. This is obviously wrong and needs a proper fix + // TODO: See https://github.com/ether/etherpad-lite/issues/3830 + document.location=document.location; + + // Switching to pad should work but doesn't... + // return pad.switchToPad(padId); // hacky but whatever. + // It might be related to Auth because failure logs... + // [ERROR] console - Auth was never applied to a session. + // If you are using the stress-test tool then restart Etherpad + // and the Stress test tool. + msg.client_rev=pad.collabClient.getCurrentRevisionNumber(); msg.reconnect=true; + } socket.json.send(msg); @@ -210,6 +222,7 @@ function handshake() }); socket.on('reconnecting', function() { + padeditor.disable(); pad.collabClient.setStateIdle(); pad.collabClient.setIsPendingRevision(true); pad.collabClient.setChannelState("RECONNECTING");