diff options
Diffstat (limited to 'framework/source/helper/statusindicatorfactory.cxx')
-rw-r--r-- | framework/source/helper/statusindicatorfactory.cxx | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/framework/source/helper/statusindicatorfactory.cxx b/framework/source/helper/statusindicatorfactory.cxx index 3b4001a28fdf..854972315585 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(); } } |