desktop/source/lib/init.cxx | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-)
New commits: commit 3f329e4a3cb7c43927e75b8c359e58d16716a8dd Author: Tor Lillqvist <t...@collabora.com> AuthorDate: Tue May 14 10:20:50 2019 +0300 Commit: Tor Lillqvist <t...@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; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits