Apache OpenOffice (AOO) Bugzilla – Issue 35927
Plugin freezes mozilla and Office
Last modified: 2005-01-07 14:02:14 UTC
Hi Mike, Plugin engineers found out: We have tested these files on windows and Solaris Sparc. These files also can not been opened successfully on our side. StarOffice and Mozilla will hang up. After debugging and testing, we found the this problem will happens when a document contains OLE object. Any document(*.sxw, *.sxc,*.sxi) including some OLE objects will hang up StarOffice. This can be proved by delete all OLE objects in file CWS-Introduction.sxi, then it can be loaded again. And if you add a OLE object to a normal file( that can be loaded), it will not be loaded again. This happens also on Solaris. From debug, we also found where StarOffice is hanged up, it is ->after load document, call statusBarManager::UpdateControllers ->StatusbarController::update() ->StatusbarController::bindListener() ->SfxOfficeDispatch::addStatusListener ->SfxDispatchController_Impl::addStatusListener() ->SfxDispatcher::QueryState ->SfxShell::GetSlotState() ->SfxStubSfxObjectShellGetState_Impl() ->SfxObjectShell::GetState_Impl() ->SfxObjectShell::IsModified() uno::Reference < embed::XEmbeddedObject > xObj = GetEmbeddedObjectContainer().GetEmbeddedObject( aNames[n] ); ->EmbeddedObjectContainer::GetEmbeddedObject() ->OCommonEmbeddedObject::getCurrentState() StarOffice is hanged when call ::osl::MutexGuard aGuard( m_aMutex ); The m_aMutex is not realsed here, so StarOffice stopped here. This may because some exception in OCommonEmbeddedObject::changeState. Please contact me if you need testdocuments. Or create and load a described document with the mozilla plugin.
The problem was caused by wrong handling of resettable mutex guard.
*** Issue 35681 has been marked as a duplicate of this issue. ***
Ropening to send for testing.
Please verify the issue.
Setting back to fixed state.
*** Issue 36180 has been marked as a duplicate of this issue. ***
*** Issue 35552 has been marked as a duplicate of this issue. ***
Verified in CWS fwkpp2fix1
works fine in m69