From 4baec725e0dc0713f0d47003e9b10bc3b62f56ff Mon Sep 17 00:00:00 2001 From: Jan-Marek Glogowski Date: Mon, 28 Aug 2017 19:58:32 +0200 Subject: WIN run main thread redirects ignoring SolarMutex This way we can drop all the special nReleased handling. Instead we use the same mechanism as on Mac, where we keep the lock, but disable it for the main thread. As a security measure we assert on duplicate redirects, which should not happen. As a result we can't use SendMessage on the main thread itself, which would normally just call the WinProc directly. This could be accomplished by converting the redirect bool into a counter, which should be safe, as no other thread could acquire the SolarMutex, as we don't release it. Change-Id: Icd87b3da37a2489f3cad2bc80215bf93fc41d388 Reviewed-on: https://gerrit.libreoffice.org/42583 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski --- vcl/osx/salinst.cxx | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'vcl/osx') diff --git a/vcl/osx/salinst.cxx b/vcl/osx/salinst.cxx index 54f6ffdd7021..947e484b5c1d 100644 --- a/vcl/osx/salinst.cxx +++ b/vcl/osx/salinst.cxx @@ -533,10 +533,8 @@ SAL_WNODEPRECATED_DECLARATIONS_PUSH SAL_WNODEPRECATED_DECLARATIONS_POP } -bool AquaSalInstance::DoYield(bool bWait, bool bHandleAllCurrentEvents, sal_uLong const nReleased) +bool AquaSalInstance::DoYield(bool bWait, bool bHandleAllCurrentEvents) { - (void) nReleased; - assert(nReleased == 0); // not implemented bool bHadEvent = false; // ensure that the per thread autorelease pool is top level and -- cgit