summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2016-07-14 21:59:30 +0200
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2016-09-13 02:15:15 +0000
commited7e74ae1c7ecfc29df152a8397fb9f6e1763a60 (patch)
tree6f4b6369b8909c4a97a5ec2f4f311ec5f35e8ac0
parentb570fa88adb005ce0868fdefe5d94489dcd00c93 (diff)
try to avoid the deadlock around the clipboard, tdf#56818
This deadlocks in the case that we have an external process communicating with LibreOffice as the SolarMutexReleaser allows a connection to be processed while the normal code has just released the SolarMutex. If the external call code now goes down the same code path we deadlock on the SolarMutex together with other mutexes in the clipboard code. Change-Id: I18fd6953c9566452a31b1a4c32c68494ec7a52ac Reviewed-on: https://gerrit.libreoffice.org/27251 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
-rw-r--r--svtools/source/misc/transfer.cxx4
1 files changed, 0 insertions, 4 deletions
diff --git a/svtools/source/misc/transfer.cxx b/svtools/source/misc/transfer.cxx
index 216ae9ecd7bc..b156b61220bd 100644
--- a/svtools/source/misc/transfer.cxx
+++ b/svtools/source/misc/transfer.cxx
@@ -922,8 +922,6 @@ void TransferableHelper::CopyToClipboard( vcl::Window *pWindow ) const
if( mxClipboard.is() && !mxTerminateListener.is() )
{
- SolarMutexReleaser aReleaser;
-
try
{
TransferableHelper* pThis = const_cast< TransferableHelper* >( this );
@@ -949,8 +947,6 @@ void TransferableHelper::CopyToSelection( vcl::Window *pWindow ) const
if( xSelection.is() && !mxTerminateListener.is() )
{
- SolarMutexReleaser aReleaser;
-
try
{
TransferableHelper* pThis = const_cast< TransferableHelper* >( this );