psppire_acr_dispose (GObject *obj)
{
PsppireAcr *acr = PSPPIRE_ACR (obj);
+
+ if (acr->dispose_has_run)
+ return;
+ acr->dispose_has_run = TRUE;
+
psppire_acr_set_model (acr, NULL);
G_OBJECT_CLASS (psppire_acr_parent_class)->dispose (obj);
g_value_unset (&value);
}
- g_list_foreach (l, (GFunc) gtk_tree_path_free, NULL);
+ g_list_foreach (l, GFUNC_COMPAT_CAST (gtk_tree_path_free), NULL);
g_list_free (l);
if (acr->update) acr->update (acr->update_data);
gtk_list_store_remove (acr->list_store, &iter);
- g_list_foreach (l, (GFunc) gtk_tree_path_free, NULL);
+ g_list_foreach (l, GFUNC_COMPAT_CAST (gtk_tree_path_free), NULL);
g_list_free (l);
}
result = (l != NULL);
- g_list_foreach (l, (GFunc) gtk_tree_path_free, NULL);
+ g_list_foreach (l, GFUNC_COMPAT_CAST (gtk_tree_path_free), NULL);
g_list_free (l);
return result;
GtkWidget *sw = gtk_scrolled_window_new (NULL, NULL);
+ acr->dispose_has_run = FALSE;
+
gtk_orientable_set_orientation (GTK_ORIENTABLE (acr), GTK_ORIENTATION_HORIZONTAL);
acr->tv = GTK_TREE_VIEW (gtk_tree_view_new ());