Kaydet (Commit) b693fb5c authored tarafından Tor Lillqvist's avatar Tor Lillqvist

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
üst e10cd7b8
......@@ -4524,13 +4524,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;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment