diff options
| author | Victor Kareh <[email protected]> | 2026-04-01 16:37:22 -0400 |
|---|---|---|
| committer | Victor Kareh <[email protected]> | 2026-04-01 16:37:22 -0400 |
| commit | 190e9e18e5a2ab6ec963f7dd7b6e118705852ed1 (patch) | |
| tree | e729f25dac77a93276e5227f910477bef26c541f | |
| parent | d67f86922f566fde7c3ad541b48c5ecf4a861e18 (diff) | |
| download | mate-panel-fix-eds-event-list-leaks.tar.bz2 mate-panel-fix-eds-event-list-leaks.tar.xz | |
clock: fix memory leaks in EDS event list handlingfix-eds-event-list-leaks
The calendar popup was not freeing the list of events returned by the
calendar client after populating the appointment and task views. This
caused unbounded memory growth every time the popup was opened.
| -rw-r--r-- | applets/clock/calendar-window.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/applets/clock/calendar-window.c b/applets/clock/calendar-window.c index bd117a3f..79780d34 100644 --- a/applets/clock/calendar-window.c +++ b/applets/clock/calendar-window.c @@ -1423,6 +1423,8 @@ handle_appointments_changed (CalendarWindow *calwin) update_frame_visibility (calwin->priv->appointment_list, GTK_TREE_MODEL (calwin->priv->appointments_filter)); + g_slist_free_full (events, (GDestroyNotify) calendar_event_free); + /* Auto-scroll to next upcoming event */ if (calwin->priv->appointment_tree_view) { GtkTreeView *tree_view = GTK_TREE_VIEW(calwin->priv->appointment_tree_view); @@ -1544,6 +1546,8 @@ handle_tasks_changed (CalendarWindow *calwin) g_free (percent_complete_text); } + g_slist_free_full (events, (GDestroyNotify) calendar_event_free); + /* Refresh filter before checking visibility */ if (calwin->priv->tasks_filter) gtk_tree_model_filter_refilter (calwin->priv->tasks_filter); |
