https://bugs.documentfoundation.org/show_bug.cgi?id=91715

Michael Meeks <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |NEEDINFO
             Blocks|91310                       |

--- Comment #7 from Michael Meeks <[email protected]> ---
Hmm; the error here is:

#2  0x00007efe51a4cb86 in __assert_fail_base (fmt=0x7efe51b9d830 "%s%s%s:%u:
%s%sAssertion `%s' failed.\n%n", 
    assertion=assertion@entry=0x7efe4b9f1990
"ImplGetSVData()->mpDefInst->CheckYieldMutex() && \"SolarMutex not locked\"", 
    file=file@entry=0x7efe4b9f1948 

That looks like a pretty normal UNO / threading issue that is unrelated to
VclPtr; and appears to be related to the new timer/idle work.

I guess we are simply not holding the SolarMutex while we're cleaning up all
this VCL stuff. Then again - UNO & threading is a horrendous tangled mess from
beginning to end.

To fix the assert; it would be worth trying the patch below - through 'make
check' and also your use-case.

diff --git a/svtools/source/uno/genericunodialog.cxx
b/svtools/source/uno/genericunodialog.cxx
index 4b7f82f..6cabb2b1 100644
--- a/svtools/source/uno/genericunodialog.cxx
+++ b/svtools/source/uno/genericunodialog.cxx
@@ -313,6 +313,7 @@ void SAL_CALL OGenericUnoDialog::initialize( const
Sequence< Any >& aArguments )

 void OGenericUnoDialog::destroyDialog()
 {
+    SolarMutexGuard aSolarGuard;
     m_pDialog.disposeAndClear();
 }


Can you confirm that works ? if so, lets get it in.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs

Reply via email to