From 832dda315e83c8ef5f2ecacdecda3e97f6013d8e Mon Sep 17 00:00:00 2001 From: Mike Kaganski Date: Sun, 31 May 2020 17:24:15 +0200 Subject: tdf#133527: the code may be called without solar mutex guard ... so make sure to get one before using releaser Change-Id: Ifd746e4bb4bdb0110d25fe1ff71fa3dfef67c4da Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95231 Tested-by: Jenkins Reviewed-by: Mike Kaganski (cherry picked from commit 54669d9fcc9d51c561108b512717698cff9320af) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95238 --- vcl/source/treelist/transfer.cxx | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'vcl') diff --git a/vcl/source/treelist/transfer.cxx b/vcl/source/treelist/transfer.cxx index 8ff088d05366..eefc22e8ba6c 100644 --- a/vcl/source/treelist/transfer.cxx +++ b/vcl/source/treelist/transfer.cxx @@ -1444,6 +1444,8 @@ Any TransferableDataHelper::GetAny( const DataFlavor& rFlavor, const OUString& r { // tdf#133365: only release solar mutex on Windows #ifdef _WIN32 + // tdf#133527: first, make sure that we actually hold the mutex + SolarMutexGuard g; // Our own thread may handle the nested IDataObject::GetData call, // and try to acquire solar mutex SolarMutexReleaser r; @@ -1464,6 +1466,8 @@ Any TransferableDataHelper::GetAny( const DataFlavor& rFlavor, const OUString& r { // tdf#133365: only release solar mutex on Windows #ifdef _WIN32 + // tdf#133527: first, make sure that we actually hold the mutex + SolarMutexGuard g; // Our own thread may handle the nested IDataObject::GetData call, // and try to acquire solar mutex SolarMutexReleaser r; -- cgit