include/connectivity/OSubComponent.hxx | 2 ++ 1 file changed, 2 insertions(+)
New commits: commit cdb4efad0eba9a049d36b20c459fa530636d9c79 Author: Michael Stahl <mst...@redhat.com> Date: Tue Jun 21 17:55:44 2016 +0200 connectivity: disable connectivity::release() for now This bizarre thing essentially does the same as WeakComponentImplHelperBase::release(), except that 1) it forgets to call disposeWeakConnectionPoint() 2) it doesn't catch exceptions from dispose() 3) it restores the m_xParent member after the dispose() call 4) it's racy because the "else" branch may be executed at a time when another thread has already concurrently deleted the object This is rather mysterious and there is no obvious reason why a manual dispose() call should clear m_xParent (as the users tend to do, by calling dispose_ChildImpl() from their disposing()), but a dispose() called from release() should restore m_xParent again. Let's try to stop doing this madness and see if anything breaks. Change-Id: I88a60fe1a7eeb625442faf436c9a3deb3c59941c Reviewed-on: https://gerrit.libreoffice.org/26554 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Michael Stahl <mst...@redhat.com> diff --git a/include/connectivity/OSubComponent.hxx b/include/connectivity/OSubComponent.hxx index 1aa9d15..8f80e8e 100644 --- a/include/connectivity/OSubComponent.hxx +++ b/include/connectivity/OSubComponent.hxx @@ -72,11 +72,13 @@ namespace connectivity } void relase_ChildImpl() { +#if 0 ::connectivity::release(m_pDerivedImplementation->m_refCount, m_pDerivedImplementation->WEAK::rBHelper, m_xParent, m_pDerivedImplementation); +#endif m_pDerivedImplementation->WEAK::release(); } }; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits