[Libreoffice-commits] core.git: ucb/source

Michael Meeks michael.meeks at collabora.com
Mon Mar 19 12:48:35 UTC 2018


 ucb/source/ucp/file/filtask.cxx |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

New commits:
commit 5b1442ec1e6946ec3a3b9d8cfdd57ac1437d23ab
Author: Michael Meeks <michael.meeks at collabora.com>
Date:   Mon Mar 19 10:43:24 2018 +0000

    tdf#116489 - fix ucb TaskManager deadlock.
    
    Change-Id: Ia362db52e7b078203964704569e1d54f053f2b57
    Reviewed-on: https://gerrit.libreoffice.org/51544
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/ucb/source/ucp/file/filtask.cxx b/ucb/source/ucp/file/filtask.cxx
index 7cca2f8abf16..0bbeb93675d4 100644
--- a/ucb/source/ucp/file/filtask.cxx
+++ b/ucb/source/ucp/file/filtask.cxx
@@ -385,7 +385,7 @@ TaskManager::endTask( sal_Int32 CommandId,
                       const OUString& aUncPath,
                       BaseContent* pContent)
 {
-    osl::MutexGuard aGuard( m_aMutex );
+    osl::ClearableMutexGuard aGuard( m_aMutex );
     TaskMap::iterator it = m_aTaskMap.find( CommandId );
     if( it == m_aTaskMap.end() )
         return;
@@ -399,6 +399,8 @@ TaskManager::endTask( sal_Int32 CommandId,
 
     m_aTaskMap.erase( it );
 
+    aGuard.clear();
+
     if( ErrorCode != TASKHANDLER_NO_ERROR )
         throw_handler(
             ErrorCode,


More information about the Libreoffice-commits mailing list