Status

()

Core
Widget: Gonk
3 years ago
3 years ago

People

(Reporter: khuey, Unassigned)

Tracking

({mlk})

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [MemShrink:P2])

It is stored in a StaticRefPtr that is never cleared, so we leak.  The obvious thing to do is ClearOnShutdown the pointer but that it appears we create HwcComposer2d off the main thread so that is not an option.  Do we need the StaticRefPtr?  Can we rely on something else holding the strong reference?
Whiteboard: [MemShrink]
HwcComposer2d seems to be used from LayerManagerComposite and GLContextEGL. GLContextEGL holds strong pointer but LayerManagerComposite just hold the strong pointer only during its usage.

http://dxr.mozilla.org/mozilla-central/source/gfx/gl/GLContextProviderEGL.cpp#236
http://dxr.mozilla.org/mozilla-central/source/gfx/layers/composite/LayerManagerComposite.cpp#425
From comment 1, How to access HwComposer2d seems inconsistent between LayerManagerComposite and GLContextEGL.
Whiteboard: [MemShrink] → [MemShrink:P2]
You need to log in before you can comment on or make changes to this bug.