Hi Noel,

On Sat, 2011-11-12 at 09:49 +0000, Noel Power wrote:
> We have an internal bug that happens when closing the application where 
> there is a legacy format document ( e.g. something.sdd ) already open

        Thanks for looking at this :-)

> ==23824== Invalid read of size 8
> ==23824==    at 0x10C543A0: GtkSalDisplay::EventGuardAcquire() 
> (gtkdata.hxx:83)

        So - your fix seems reasonable enough but:

> ==23824==    by 0x10C53633: GtkXLib::userEventFn(void*) (gtkdata.cxx:800)
> ==23824==    by 0x10C535D4: call_userEventFn (gtkdata.cxx:789)
> ==23824==    by 0x13538BD2: g_main_context_dispatch (in 
> /lib64/libglib-2.0.so.0.2800.0)

        This processing of events during the GtkXLib destructor is a bit
surprising I suppose. I would be inclined as a belt + braces to add:

    if (m_pUserEvent)
    {
        g_source_destroy (m_pUserEvent);
        g_source_unref (m_pUserEvent);
        m_pUserEvent = NULL;
    }

        At the end of ~GtkXLib as well. The hard-coded:

            int nMaxEvents = bHandleAllCurrentEvents ? 100 : 1;

        in the original code is particularly horrible but ... ;-)

> I had a patch ( that just returned immediately from GtkXLib::userEventFn 
> while GtkXLib was destructing ) However now I see that this doesn't 
> happen on master so after looking there I rewrote the patch be more like 
> ( albeit simpler ) the solution there ( which seems to be part of some 
> bigger rework, for gtk3 ? )

        Right - there are some rather substantial changes there. Then again - I
havn't seen my TESTME: warning on shutdown on master so perhaps that
isn't getting exercised much.

> since I know approximately zero about gtk stuff, appreciate wiser heads 
> having a look

        Looks fine for the branch for me - any chance you could cherry-pick
it ?

        Thanks !

                Michael.

-- 
michael.me...@suse.com  <><, Pseudo Engineer, itinerant idiot

_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to