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.meeks@suse.com <><, Pseudo Engineer, itinerant idiot
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.