[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.0' - desktop/source
Tor Lillqvist (via logerrit)
logerrit at kemper.freedesktop.org
Tue May 14 11:14:59 UTC 2019
desktop/source/lib/init.cxx | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
New commits:
commit 3f329e4a3cb7c43927e75b8c359e58d16716a8dd
Author: Tor Lillqvist <tml at collabora.com>
AuthorDate: Tue May 14 10:20:50 2019 +0300
Commit: Tor Lillqvist <tml at collabora.com>
CommitDate: Tue May 14 14:13:28 2019 +0300
We apparently need to drop the Solar Mutex when exiting lo_runLoop() on iOS
It seems to be held after soffice_main() returns for the first
document opened, but not subsequent ones, for some reason. So acquire
it an extra time to be able to use Application::ReleaseSolarMutex()...
Without this, when opening a subsequent document, the loleaflet
loading progress bar just hangs.
Change-Id: I4e4e7b814f0dba836b790b6f68470aab54f8bbb9
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index 902dceb64f31..b4d93861b0bd 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -4711,13 +4711,20 @@ static void lo_runLoop(LibreOfficeKit* /*pThis*/,
{
#ifdef IOS // Maybe ANDROID, too?
InitVCL();
+ Application::GetSolarMutex().acquire();
#endif
- SolarMutexGuard aGuard;
+ {
+ SolarMutexGuard aGuard;
- vcl::lok::registerPollCallbacks(pPollCallback, pWakeCallback, pData);
- Application::UpdateMainThread();
- soffice_main();
+ vcl::lok::registerPollCallbacks(pPollCallback, pWakeCallback, pData);
+ Application::UpdateMainThread();
+ soffice_main();
+ }
+#ifdef IOS // ANDROID, too?
+ vcl::lok::unregisterPollCallbacks();
+ Application::ReleaseSolarMutex();
+#endif
}
static bool bInitialized = false;
More information about the Libreoffice-commits
mailing list