framework/source/helper/statusindicatorfactory.cxx |   11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

New commits:
commit 0b1dda2bfaf4f43dd347c2986f1508458dc47c6d
Author: Stephan Bergmann <sberg...@redhat.com>
Date:   Thu Aug 13 12:04:55 2015 +0200

    tdf#93404: Forgot to launch WakeUpThread
    
    ...in 017f250764ec7b4ecb82ac19f5b3f68cadf1bf56 "Ensure WakeUpThread is 
joined
    before exit"
    
    (cherry picked from commit 54f10a9654b617c4c993044e52e7bd40d0151c53, plus
    ded58e062c9e9b8b5f9dc9a18777a1be68359a91 "Related tdf#93404: Fix deadlock 
when
    joining WakeUpThread")
    
    Change-Id: Iaa5a5772f099b11229bd40c3cc10d863ef0ad5b3
    Reviewed-on: https://gerrit.libreoffice.org/17698
    Reviewed-by: Caolán McNamara <caol...@redhat.com>
    Tested-by: Caolán McNamara <caol...@redhat.com>
    Reviewed-by: Eike Rathke <er...@redhat.com>
    Reviewed-by: Jan Holesovsky <ke...@collabora.com>

diff --git a/framework/source/helper/statusindicatorfactory.cxx 
b/framework/source/helper/statusindicatorfactory.cxx
index 3b4001a..8549723 100644
--- a/framework/source/helper/statusindicatorfactory.cxx
+++ b/framework/source/helper/statusindicatorfactory.cxx
@@ -544,15 +544,20 @@ void StatusIndicatorFactory::impl_startWakeUpThread()
     if (!m_pWakeUp.is())
     {
         m_pWakeUp = new WakeUpThread(this);
+        m_pWakeUp->launch();
     }
 }
 
 void StatusIndicatorFactory::impl_stopWakeUpThread()
 {
-    osl::MutexGuard g(m_mutex);
-    if (m_pWakeUp.is())
+    rtl::Reference<WakeUpThread> wakeUp;
+    {
+        osl::MutexGuard g(m_mutex);
+        wakeUp = m_pWakeUp;
+    }
+    if (wakeUp.is())
     {
-        m_pWakeUp->stop();
+        wakeUp->stop();
     }
 }
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to