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

Michael Stahl <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected],
                   |                            |[email protected],
                   |                            |[email protected]
          Component|LibreOffice                 |graphics stack
            Summary|LibO crashes with ntdll.dll |LibO crashes on shutdown
                   |on first startup            |destroying global
                   |                            |D2DWriteTextOutRenderer
                   |                            |instance

--- Comment #6 from Michael Stahl <[email protected]> ---
both of these traces are DllMain running global variable dtors,
with this static D2DWriteTextOutRenderer in vcl/win/gdi/winlayout.cxx
being the likely culprit:

TextOutRenderer & TextOutRenderer::get(bool bUseDWrite)
{
    if (bUseDWrite)
    {
        static std::unique_ptr<TextOutRenderer>
_impl(D2DWriteTextOutRenderer::InitModules()
            ? static_cast<TextOutRenderer*>(new D2DWriteTextOutRenderer())
            : static_cast<TextOutRenderer*>(new ExTextOutRenderer));

        return *_impl;
    }


speculating why this crashes: the crash is inside a
ThreadManager_VistaThreadPool::~ThreadManager_VistaThreadPool,
and at this point in shutdown only the thread that has
called exit() is still running, all other threads have
been terminated by Win32 already, so maybe this
wants to access something that is no longer there.

i wonder if it would help to move the instance somewhere
where it can be deleted from DeInitVCL()? it shouldn't be needed
after DeInitVCL() hopefully?

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

Reply via email to