From 3fe247aa2c869e5fd3e422a5d22df609eeb718f0 Mon Sep 17 00:00:00 2001 From: mbkma Date: Sun, 29 Mar 2026 23:16:54 +0200 Subject: fix memory leaks --- applets/clock/clock.c | 15 +++++++++++++++ mate-panel/panel-menu-bar.c | 5 +++++ 2 files changed, 20 insertions(+) diff --git a/applets/clock/clock.c b/applets/clock/clock.c index bc01b290..2aff3878 100644 --- a/applets/clock/clock.c +++ b/applets/clock/clock.c @@ -822,6 +822,21 @@ destroy_clock (GtkWidget * widget, ClockData *cd) cd->systz = NULL; } + if (cd->clock_group) { + g_object_unref (cd->clock_group); + cd->clock_group = NULL; + } + + if (cd->prefs_window) { + gtk_widget_destroy (cd->prefs_window); + cd->prefs_window = NULL; + } + + if (cd->set_time_window) { + gtk_widget_destroy (cd->set_time_window); + cd->set_time_window = NULL; + } + if (cd->cities_store) { g_object_unref (cd->cities_store); cd->cities_store = NULL; diff --git a/mate-panel/panel-menu-bar.c b/mate-panel/panel-menu-bar.c index b348ae48..f8bbcc2e 100644 --- a/mate-panel/panel-menu-bar.c +++ b/mate-panel/panel-menu-bar.c @@ -291,9 +291,14 @@ static void panel_menu_bar_finalize (GObject* object) if (menubar->priv->settings != NULL) { + g_signal_handlers_disconnect_by_func (menubar->priv->settings, + panel_menu_bar_update_visibility, + menubar); g_object_unref (menubar->priv->settings); menubar->priv->settings = NULL; } + + G_OBJECT_CLASS (panel_menu_bar_parent_class)->finalize (object); } static void panel_menu_bar_class_init(PanelMenuBarClass* klass) -- cgit v1.2.1