On Tue, 2012-03-13 at 18:04 +0100, Thorsten Behrens wrote:
> Caolan McNamara wrote:
> > So, how about
> > http://cgit.freedesktop.org/libreoffice/core/commit/?id=131e5d35a4edb9f8875a197e8e0382c168834f70
> > Seems to fix the crash. Worthwhile for 3-5 ?
>  
> Eh. Inspected for syntactical equivalence, but this is quite
> massive. Hesitant to hand-wave that in w/o further deliberation. ;)

        So - I'd like to get this into 3-5 - no point in leaving known SEGV's
lying around ;-) The only substantive changes I can see are:

        * around three calls to GetOverlayManager() that now happen once
          in the method instead of twice - once to check for NULL, and
          another time to invoke the method.
                + if there truly is a race here it could go either way
                  and we fixed another crash ;-)
                + ie. a non-issue.

        * the final fix itself:

+            //Resolves: fdo#46728 ensure this exists until end of scope
+            rtl::Reference<OverlayManager> xRef(this);

                Which keeps the 'this' pointer alive long enough not
                to crash in the timeout handler - which seems a worthy
                goal at least ? :-)

        * and of course initializing the ref counts in the oddly named
          badbf0c commit.

        So - I'd like to get it in. Thorsten - please scream and revert if I've
really got this wrong :-)

        Thanks Caolan; lovely cleanup too :-)

        Regards,

                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