[gtk+] gtkmodelbutton: Plug a leak



commit 33f9cbafcd1a0492c19c53282454184d28fc771f
Author: Carlos Garnacho <carlosg gnome org>
Date:   Thu Jun 25 14:56:59 2015 +0200

    gtkmodelbutton: Plug a leak
    
    The private struct had some data that needed freeing, but this widget
    didn't have any destroy/dispose/finalize handlers.

 gtk/gtkmodelbutton.c |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)
---
diff --git a/gtk/gtkmodelbutton.c b/gtk/gtkmodelbutton.c
index a3c62bc..604d422 100644
--- a/gtk/gtkmodelbutton.c
+++ b/gtk/gtkmodelbutton.c
@@ -795,6 +795,16 @@ gtk_model_button_draw (GtkWidget *widget,
 }
 
 static void
+gtk_model_button_destroy (GtkWidget *widget)
+{
+  GtkModelButton *model_button = GTK_MODEL_BUTTON (widget);
+
+  g_clear_pointer (&model_button->menu_name, g_free);
+
+  GTK_WIDGET_CLASS (gtk_model_button_parent_class)->destroy (widget);
+}
+
+static void
 gtk_model_button_clicked (GtkButton *button)
 {
   GtkModelButton *model_button = GTK_MODEL_BUTTON (button);
@@ -833,6 +843,7 @@ gtk_model_button_class_init (GtkModelButtonClass *class)
   widget_class->get_preferred_height_and_baseline_for_width = 
gtk_model_button_get_preferred_height_and_baseline_for_width;
   widget_class->size_allocate = gtk_model_button_size_allocate;
   widget_class->draw = gtk_model_button_draw;
+  widget_class->destroy = gtk_model_button_destroy;
 
   button_class->clicked = gtk_model_button_clicked;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]