var-type-dialog: Fix possible memory leaks.
authorBen Pfaff <blp@cs.stanford.edu>
Tue, 17 Jul 2012 05:28:14 +0000 (22:28 -0700)
committerBen Pfaff <blp@cs.stanford.edu>
Tue, 17 Jul 2012 14:09:57 +0000 (07:09 -0700)
gtk_tree_model_get_value() documentation says:

    When done with value, g_value_unset() needs to be called to free
    any allocated memory.

but none of the users in this file did that.

src/ui/gui/var-type-dialog.c

index 786b0c42174fb236a9e822df1f57b016ccc996b2..aa46ca446dbaafe6e5787f7ef200447babb54bf6 100644 (file)
@@ -290,6 +290,8 @@ set_format_from_treeview (GtkTreeView *treeview, gpointer data)
   gtk_tree_model_get_value (model, &iter, 1, &the_value);
 
   dialog->fmt_l = *(struct fmt_spec *) g_value_get_pointer (&the_value);
+
+  g_value_unset (&the_value);
 }
 
 
@@ -313,6 +315,8 @@ set_format_type_from_treeview (GtkTreeView *treeview, gpointer data)
 
   dialog->fmt_l = custom_format;
   dialog->fmt_l.type = *(int*) g_value_get_pointer (&the_value);
+
+  g_value_unset (&the_value);
 }
 
 
@@ -589,6 +593,8 @@ select_treeview_from_format (GtkTreeView *treeview, const struct fmt_spec *fmt)
 
       spec = g_value_get_pointer (&value);
 
+      g_value_unset (&value);
+
       if ( 0 == memcmp (spec, fmt, sizeof (struct fmt_spec)))
        {
          break;
@@ -636,6 +642,8 @@ select_treeview_from_format_type (GtkTreeView *treeview,
 
       spec = * ((int *) g_value_get_pointer (&value));
 
+      g_value_unset (&value);
+
       if ( spec == fmt_type)
        break;
     }