[PATCH weston] xwm: Fix two more icon related memory leaks
Derek Foreman
derekf at osg.samsung.com
Wed Mar 28 14:28:52 UTC 2018
On 2018-03-28 08:56 AM, Pekka Paalanen wrote:
> On Tue, 27 Mar 2018 11:09:32 -0500
> Derek Foreman <derekf at osg.samsung.com> wrote:
>
>> Hopefully sort the last leaks introduced in commit 6b58ea8c
>>
>> The window could be destroyed before it had a frame but after it had an icon
>> (I could trigger this with firefox), and the window could be assigned an icon
>> twice before it had a frame (I could trigger this with terminology).
>>
>> The latter leak was
>> Reported-by: Scott Moreau <oreaus at gmail.com>
>>
>> Signed-off-by: Derek Foreman <derekf at osg.samsung.com>
>> ---
>> xwayland/window-manager.c | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c
>> index dad117fa..7b98e140 100644
>> --- a/xwayland/window-manager.c
>> +++ b/xwayland/window-manager.c
>> @@ -1404,6 +1404,9 @@ weston_wm_handle_icon(struct weston_wm *wm, struct weston_wm_window *window)
>> return;
>> }
>>
>> + if (window->icon_surface)
>> + cairo_surface_destroy(window->icon_surface);
>> +
>> cairo_surface_set_user_data(new_surface, NULL, reply,
>> &handle_icon_surface_destroy);
>>
>> @@ -1506,6 +1509,8 @@ weston_wm_window_destroy(struct weston_wm_window *window)
>> wl_event_source_remove(window->repaint_source);
>> if (window->cairo_surface)
>> cairo_surface_destroy(window->cairo_surface);
>> + if (window->icon_surface)
>> + cairo_surface_destroy(window->icon_surface);
>>
>> if (window->frame_id) {
>> xcb_reparent_window(wm->conn, window->id, wm->wm_window, 0, 0);
>
>
> Reviewed-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
Thanks, I've pushed it now.
>
> Thanks,
> pq
>
More information about the wayland-devel
mailing list