summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2020-05-29 10:53:47 +0200
committerMike Kaganski <mike.kaganski@collabora.com>2020-05-30 21:53:33 +0200
commit06ba0ab749930cf404f0e4a5a1b8abe9be87bce5 (patch)
treea2729015cbe196356d42bd07cd0b2e91fa58e257 /vcl
parent98aced3625168e454679d3a14ebcdf55a67cbc18 (diff)
tdf#133365: only release solar mutex on Windows
Regression after f2561331534459f8aebc57e8615fa5f626521bcb Change-Id: Id12a81b2ca79edb7ae056b357dcfd1d8f4bb56ef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95088 Tested-by: Jenkins Tested-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Jean-Baptiste Faure <jbfaure@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> (cherry picked from commit 905f7d881fe90c2cd95c0ffc326bc45328712d3d) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95197
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/treelist/transfer.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/vcl/source/treelist/transfer.cxx b/vcl/source/treelist/transfer.cxx
index 965d820e331e..8ff088d05366 100644
--- a/vcl/source/treelist/transfer.cxx
+++ b/vcl/source/treelist/transfer.cxx
@@ -1442,9 +1442,12 @@ Any TransferableDataHelper::GetAny( const DataFlavor& rFlavor, const OUString& r
{
if( ( nRequestFormat == format.mnSotId ) && !rFlavor.MimeType.equalsIgnoreAsciiCase( format.MimeType ) )
{
+// tdf#133365: only release solar mutex on Windows
+#ifdef _WIN32
// Our own thread may handle the nested IDataObject::GetData call,
// and try to acquire solar mutex
SolarMutexReleaser r;
+#endif // _WIN32
if (xTransfer2.is())
aRet = xTransfer2->getTransferData2(format, rDestDoc);
@@ -1459,9 +1462,12 @@ Any TransferableDataHelper::GetAny( const DataFlavor& rFlavor, const OUString& r
if( !aRet.hasValue() )
{
+// tdf#133365: only release solar mutex on Windows
+#ifdef _WIN32
// Our own thread may handle the nested IDataObject::GetData call,
// and try to acquire solar mutex
SolarMutexReleaser r;
+#endif // _WIN32
if (xTransfer2.is())
aRet = xTransfer2->getTransferData2(rFlavor, rDestDoc);