diff options
author | Ian Fan <ianfan0@gmail.com> | 2019-02-16 11:02:15 +0000 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2019-02-16 21:49:16 +0100 |
commit | f54077dbca2faf3f0d614377a01a215c82ef075e (patch) | |
tree | 159afadf20fef694e827213458a5a5caf4195112 /swaybar/tray/item.c | |
parent | tray: when a service is lost, remove all matching items (diff) | |
download | sway-f54077dbca2faf3f0d614377a01a215c82ef075e.tar.gz sway-f54077dbca2faf3f0d614377a01a215c82ef075e.tar.zst sway-f54077dbca2faf3f0d614377a01a215c82ef075e.zip |
tray: fix memory leaks
Diffstat (limited to 'swaybar/tray/item.c')
-rw-r--r-- | swaybar/tray/item.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/swaybar/tray/item.c b/swaybar/tray/item.c index 4262d687..4fa6c97b 100644 --- a/swaybar/tray/item.c +++ b/swaybar/tray/item.c | |||
@@ -299,6 +299,8 @@ void destroy_sni(struct swaybar_sni *sni) { | |||
299 | return; | 299 | return; |
300 | } | 300 | } |
301 | 301 | ||
302 | cairo_surface_destroy(sni->icon); | ||
303 | |||
302 | sd_bus_slot_unref(sni->new_icon_slot); | 304 | sd_bus_slot_unref(sni->new_icon_slot); |
303 | sd_bus_slot_unref(sni->new_attention_icon_slot); | 305 | sd_bus_slot_unref(sni->new_attention_icon_slot); |
304 | sd_bus_slot_unref(sni->new_status_slot); | 306 | sd_bus_slot_unref(sni->new_status_slot); |
@@ -308,9 +310,11 @@ void destroy_sni(struct swaybar_sni *sni) { | |||
308 | free(sni->path); | 310 | free(sni->path); |
309 | free(sni->status); | 311 | free(sni->status); |
310 | free(sni->icon_name); | 312 | free(sni->icon_name); |
311 | free(sni->icon_pixmap); | 313 | list_free_items_and_destroy(sni->icon_pixmap); |
312 | free(sni->attention_icon_name); | 314 | free(sni->attention_icon_name); |
315 | list_free_items_and_destroy(sni->attention_icon_pixmap); | ||
313 | free(sni->menu); | 316 | free(sni->menu); |
317 | free(sni->icon_theme_path); | ||
314 | free(sni); | 318 | free(sni); |
315 | } | 319 | } |
316 | 320 | ||