[Libreoffice-commits] online.git: loolwsd/LOOLWSD.cpp

Miklos Vajna vmiklos at collabora.co.uk
Wed Oct 28 02:28:46 PDT 2015


 loolwsd/LOOLWSD.cpp |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit b5ed22c4d9c68cb93d8ba0d7b689533cd4b38f82
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Wed Oct 28 10:24:12 2015 +0100

    loolwsd: avoid filtering out "duplicated" uno commands
    
    Problem since commit 8f48dabf28076fc448ff76ec5da1cdd59990c5b1 (loolwsd:
    discard requests that are in the queue already, 2015-07-21), e.g.
    "select-all, paste, select-all" doesn't have the same meaning as
    "select-all, paste".
    
    Quite possibly the condition should be inverted, and filtering out
    should be done only for a few commands, like "tile"; but at least
    filtering out "uno" is definitely problematic.

diff --git a/loolwsd/LOOLWSD.cpp b/loolwsd/LOOLWSD.cpp
index 4771ec4..3e30e62 100644
--- a/loolwsd/LOOLWSD.cpp
+++ b/loolwsd/LOOLWSD.cpp
@@ -403,7 +403,8 @@ public:
                                 // Also forward the "canceltiles" to the child process, if any
                                 session->handleInput(buffer, n);
                             }
-                            else if (!queue.alreadyInQueue(firstLine))
+                            // Filtering out duplicated uno commands would change the meaning of the message sequence.
+                            else if (!queue.alreadyInQueue(firstLine) || firstLine.find("uno") == 0)
                             {
                                 queue.put(firstLine);
                             }


More information about the Libreoffice-commits mailing list