summaryrefslogtreecommitdiff
path: root/vcl/headless
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2019-05-13 14:22:20 +0300
committerTor Lillqvist <tml@collabora.com>2019-05-16 14:35:28 +0300
commitf2d660231bb8f574a6e352144e790764ebd9f608 (patch)
treeeaf6986fd6e0a21355e1693bf2a6f8458cf84d60 /vcl/headless
parente55b3ad2709aa17582b84db618126c47c63a8831 (diff)
Using the m_FeedbackFDs is now apparently necessary also on iOS
The below commit message is relevant for the behaviour fixed by this change in the Collabora branch cp-6.0 (or core) and collabora-online-4 (of online). The behaviour here in master is broken in different ways, though, and I am not entirely sure whether this change fixes anything here. But let's apply it here, too, for consistency. 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
Diffstat (limited to 'vcl/headless')
-rw-r--r--vcl/headless/svpinst.cxx14
1 files changed, 0 insertions, 14 deletions
diff --git a/vcl/headless/svpinst.cxx b/vcl/headless/svpinst.cxx
index 74900df2471f..02e332b92fbf 100644
--- a/vcl/headless/svpinst.cxx
+++ b/vcl/headless/svpinst.cxx
@@ -77,9 +77,7 @@ SvpSalInstance::SvpSalInstance( std::unique_ptr<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)
@@ -91,13 +89,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*>(GetYieldMutex()));
@@ -153,8 +147,6 @@ void SvpSalInstance::CreateWakeupPipe(bool log)
}
}
-#endif
-
void SvpSalInstance::TriggerUserEventProcessing()
{
Wakeup();
@@ -343,11 +335,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);
@@ -507,11 +495,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