desktop/source/lib/init.cxx | 4 ++++ vcl/headless/svpinst.cxx | 14 -------------- 2 files changed, 4 insertions(+), 14 deletions(-)
New commits: commit dfce90714dcc1d797d57578ec5f6f1f5f6db6af3 Author: Tor Lillqvist <t...@collabora.com> AuthorDate: Mon May 13 14:22:20 2019 +0300 Commit: Tor Lillqvist <t...@collabora.com> CommitDate: Mon May 13 17:06:37 2019 +0300 Using the m_FeedbackFDs is now necessary also on iOS Until recently we had managed without them on iOS, but that changed with the recent "Unipoll" work, I think. (Without this change, the iOS app now runs into assertion failures early on. But note that this change is not enough to make it work fully again.) Change-Id: I09d25326ba73ce897da5c91f30530f5b3d5fd272 diff --git a/vcl/headless/svpinst.cxx b/vcl/headless/svpinst.cxx index 96364ae07e54..7161521624d9 100644 --- a/vcl/headless/svpinst.cxx +++ b/vcl/headless/svpinst.cxx @@ -73,9 +73,7 @@ SvpSalInstance::SvpSalInstance( SalYieldMutex *pMutex ) m_nTimeoutMS = 0; m_MainThread = osl::Thread::getCurrentIdentifier(); -#ifndef IOS CreateWakeupPipe(true); -#endif if( s_pDefaultInstance == nullptr ) s_pDefaultInstance = this; #if !defined(ANDROID) && !defined(IOS) @@ -87,13 +85,9 @@ SvpSalInstance::~SvpSalInstance() { if( s_pDefaultInstance == this ) s_pDefaultInstance = nullptr; -#ifndef IOS CloseWakeupPipe(true); -#endif } -#ifndef IOS - void SvpSalInstance::CloseWakeupPipe(bool log) { SvpSalYieldMutex *const pMutex(dynamic_cast<SvpSalYieldMutex*>(mpSalYieldMutex.get())); @@ -149,8 +143,6 @@ void SvpSalInstance::CreateWakeupPipe(bool log) } } -#endif - void SvpSalInstance::TriggerUserEventProcessing() { Wakeup(); @@ -332,11 +324,7 @@ void SvpSalYieldMutex::doAcquire(sal_uInt32 const nLockCount) m_bNoYieldLock = true; bool const bEvents = pInst->DoYield(false, request == SvpRequest::MainThreadDispatchAllEvents); m_bNoYieldLock = false; -#ifdef IOS - (void)bEvents; -#else write(m_FeedbackFDs[1], &bEvents, sizeof(bool)); -#endif } } while (true); @@ -496,11 +484,9 @@ bool SvpSalInstance::DoYield(bool bWait, bool bHandleAllCurrentEvents) : SvpRequest::MainThreadDispatchOneEvent); bool bDidWork(false); -#ifndef IOS // blocking read (for synchronisation) auto const nRet = read(pMutex->m_FeedbackFDs[0], &bDidWork, sizeof(bool)); assert(nRet == 1); (void) nRet; -#endif if (!bDidWork && bWait) { // block & release YieldMutex until the main thread does something commit 74264014090b6d31070b3bb38a1a2bb00f5b05ee Author: Tor Lillqvist <t...@collabora.com> AuthorDate: Wed Apr 24 13:19:44 2019 +0300 Commit: Tor Lillqvist <t...@collabora.com> CommitDate: Mon May 13 15:27:02 2019 +0300 tdf#124923: Need to call InitVCL() on iOS before using SolarMutexGuard Change-Id: If5781ae101e58c26368e57787cb301f84ffa82a5 diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index cd0d8677103f..f0453fefcad1 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -4627,6 +4627,10 @@ static void lo_runLoop(LibreOfficeKit* /*pThis*/, LibreOfficeKitWakeCallback pWakeCallback, void* pData) { +#ifdef IOS // Maybe ANDROID, too? + InitVCL(); +#endif + SolarMutexGuard aGuard; vcl::lok::registerPollCallbacks(pPollCallback, pWakeCallback, pData); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits