summaryrefslogtreecommitdiff
path: root/comphelper
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2013-10-02 23:00:09 +0200
committerMichael Meeks <michael.meeks@collabora.com>2013-10-07 08:57:27 +0000
commitfacd4bb410ce6b5f6d74f836affc7553babb05cf (patch)
treefd37f1b269e91be3744fdcbe7610562d8ecaa104 /comphelper
parentc7d046755cfb3f17043dee41f5060c2bfa1fd40f (diff)
rhbz#1001768: avoid deadlock in OAccessibleContextHelper::disposing()
De facto this class is locked by SolarMutex, which is what the OExternalLockGuard actually locks; do not lock m_Mutex because it may cause deadlock. Change-Id: I88b226d73dbef9a5803347b0ac3191bec2ba4515 (cherry picked from commit 4100e3b6204fc304cc7b60b9d7ff2af75118b805) Reviewed-on: https://gerrit.libreoffice.org/6114 Tested-by: Michael Meeks <michael.meeks@collabora.com> Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Diffstat (limited to 'comphelper')
-rw-r--r--comphelper/source/misc/accessiblecontexthelper.cxx4
1 files changed, 3 insertions, 1 deletions
diff --git a/comphelper/source/misc/accessiblecontexthelper.cxx b/comphelper/source/misc/accessiblecontexthelper.cxx
index b3169fd77be0..bb9047d5ca82 100644
--- a/comphelper/source/misc/accessiblecontexthelper.cxx
+++ b/comphelper/source/misc/accessiblecontexthelper.cxx
@@ -123,7 +123,9 @@ namespace comphelper
//---------------------------------------------------------------------
void SAL_CALL OAccessibleContextHelper::disposing()
{
- ::osl::ClearableMutexGuard aGuard( GetMutex() );
+ // rhbz#1001768: de facto this class is locked by SolarMutex;
+ // do not lock m_Mutex because it may cause deadlock
+ OMutexGuard aGuard( getExternalLock() );
if ( m_pImpl->getClientId( ) )
{