memory leaks around Application::PostUserEvent

Markus Mohrhard markus.mohrhard at googlemail.com
Mon Mar 14 17:03:20 UTC 2016


Hey,

On Mon, Mar 14, 2016 at 1:01 PM, Caolán McNamara <caolanm at redhat.com> wrote:

> On Sat, 2016-03-12 at 17:28 +0100, Markus Mohrhard wrote:
> > Hey,
> >
> > so while looking through the calc memory leaks I have many leaks
> > related to the return object of Application::PostUserEvent. The
> > returned value is created with new but I see no clear ownership for
> > the returned value.
> >
> > Does anyone known who should actually own that object? It seems to be
> > passed around a lot and there is the RemoveUserEvent function but I
> > did not see any code that actually deletes the object.
>
> The ImplSVEvent goes into the various platform event queues. When all
> goes well it eventually gets dispatched back into the platform
> independent code and ends up in ImplHandleUserEvent where it gets
> deleted.
>
> The SalGenericDisplay will delete ImplSVEvents which *didn't* get
> dispatched in SalGenericDisplay::deregisterFrame.
>
> So presumably your leak doesn't hit either getting dispatched and thus
> deleted, or detected during some teardown case as an undispatched event
> and deleted by the platform-dependent event queue handler.
>
> C.
>

Thanks a lot. That helped me track down the memory leak in the headless
backend. See https://gerrit.libreoffice.org/23248. Review highly
appreciated.

Regards,
Markus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice/attachments/20160314/a66aed92/attachment.html>


More information about the LibreOffice mailing list