Move function parse_design_interaction into variable-parser.c
[pspp] / src / ui / gui / aggregate-dialog.c
index 7fce9f55637481e837719c0f4a29a8a8672c76f1..16ae1ce0cb08a5377ff72e7d5c4071b5293b7f03 100644 (file)
@@ -226,6 +226,7 @@ populate_combo_model (GtkComboBox *cb)
   gtk_cell_layout_add_attribute (GTK_CELL_LAYOUT (cb), renderer, "text", 0);
 
   gtk_combo_box_set_model (GTK_COMBO_BOX (cb), GTK_TREE_MODEL (list));
+  g_object_unref (list);
 }
 
 
@@ -527,6 +528,7 @@ aggregate_dialog (PsppireDataWindow *dw)
                                             G_TYPE_DOUBLE);
 
     psppire_acr_set_model (PSPPIRE_ACR (fd.summary_acr), list);
+    g_object_unref (list);
 
     psppire_acr_set_get_value_func (PSPPIRE_ACR (fd.summary_acr),
                                                 get_summary_spec, &fd);
@@ -633,8 +635,8 @@ static void
 append_summary_spec (const struct aggregate *agg, GtkTreeIter *iter, GString *string)
 {
   GtkTreeIter combo_iter;
-  const char *varname;
-  const char *funcname;
+  char *varname = NULL;
+  char *funcname = NULL;
 
   GtkTreeModel *acr_model = GTK_TREE_MODEL (PSPPIRE_ACR (agg->summary_acr)->list_store);
   GtkTreeModel *combo_model = gtk_combo_box_get_model (GTK_COMBO_BOX (agg->function_combo));
@@ -645,8 +647,8 @@ append_summary_spec (const struct aggregate *agg, GtkTreeIter *iter, GString *st
   double arg1, arg2;
   int arity;
   enum agr_src_vars has_src_vars;
-    const gchar *label ;
-  const gchar *srcvar ;
+  gchar *label = NULL;
+  gchar *srcvar = NULL;
 
   gtk_tree_model_get (acr_model, iter,
                      SUMMARY_COL_VARNAME, &varname,
@@ -693,6 +695,11 @@ append_summary_spec (const struct aggregate *agg, GtkTreeIter *iter, GString *st
 
       g_string_append (string, ")");
     }
+
+   free (label);
+   free (srcvar);
+   free (varname);
+   free (funcname);
 }