summaryrefslogtreecommitdiff
path: root/vcl/headless
diff options
context:
space:
mode:
authorHenry Castro <hcastro@collabora.com>2018-02-27 19:55:39 -0400
committerHenry Castro <hcastro@collabora.com>2018-02-28 22:47:52 +0100
commite215310d6b531b8af39c86639ef88495470681bc (patch)
treed7eb75d0f1275529845861ba735e40c1f2f72d5d /vcl/headless
parentf2a4cea6c035e9a837942934068b5f80a996580a (diff)
lok: update main thread
In the pre-initialization phase of the tiled rendering case the SvpSalInstance is created in a different process and when a new process is created (fork), the main thread identifier does not match so it is required to update it. Change-Id: I189e53f0b46c60f34a8016222079c9b1e2b3fef8 Reviewed-on: https://gerrit.libreoffice.org/50477 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Henry Castro <hcastro@collabora.com>
Diffstat (limited to 'vcl/headless')
-rw-r--r--vcl/headless/svpinst.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/vcl/headless/svpinst.cxx b/vcl/headless/svpinst.cxx
index 61fc93883f6a..412e86c55351 100644
--- a/vcl/headless/svpinst.cxx
+++ b/vcl/headless/svpinst.cxx
@@ -385,6 +385,12 @@ bool SvpSalInstance::IsMainThread() const
return osl::Thread::getCurrentIdentifier() == m_MainThread;
}
+void SvpSalInstance::updateMainThread()
+{
+ if (!IsMainThread())
+ m_MainThread = osl::Thread::getCurrentIdentifier();
+}
+
bool SvpSalInstance::DoYield(bool bWait, bool bHandleAllCurrentEvents)
{
#ifndef NDEBUG