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

Ashod Nakashian ashod.nakashian at collabora.co.uk
Mon Jan 2 06:03:30 UTC 2017


 wsd/LOOLWSD.cpp |   13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

New commits:
commit d67437735f6962fd000e0b2eeb2afae307c18fa8
Author: Ashod Nakashian <ashod.nakashian at collabora.co.uk>
Date:   Fri Dec 30 17:20:45 2016 -0500

    wsd: cleanup all DocBrokers when one is removed
    
    Change-Id: I1010093185e117f50f56d96e73d0771c52113d90
    Reviewed-on: https://gerrit.libreoffice.org/32614
    Reviewed-by: Ashod Nakashian <ashnakash at gmail.com>
    Tested-by: Ashod Nakashian <ashnakash at gmail.com>

diff --git a/wsd/LOOLWSD.cpp b/wsd/LOOLWSD.cpp
index 6161eb7..f30edf0 100644
--- a/wsd/LOOLWSD.cpp
+++ b/wsd/LOOLWSD.cpp
@@ -1021,18 +1021,7 @@ private:
                 // order and check again. We can't take the DocBrokersMutex while
                 // holding the docBroker lock as that can deadlock with autoSave below.
                 std::unique_lock<std::mutex> docBrokersLock2(DocBrokersMutex);
-                it = DocBrokers.find(docKey);
-                if (it != DocBrokers.end() && it->second)
-                {
-                    auto lock = it->second->getLock();
-                    if (it->second->getSessionsCount() == 0)
-                    {
-                        LOG_INF("Removing DocumentBroker for docKey [" << docKey << "].");
-                        DocBrokers.erase(docKey);
-                        docBroker->terminateChild(lock);
-                        LOG_TRC("Have " << DocBrokers.size() << " DocBrokers after removing [" << docKey << "].");
-                    }
-                }
+                cleanupDocBrokers();
             }
 
             if (SigUtil::isShuttingDown())


More information about the Libreoffice-commits mailing list