summaryrefslogtreecommitdiff
path: root/gtk/gtkdialog.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2006-01-04 07:06:12 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2006-01-04 07:06:12 +0000
commit04eceaf621aec4388bc37e10b63a49da4d2a6942 (patch)
treebddf2cd7704e2174c2cfba8bb1d65036b2a72801 /gtk/gtkdialog.c
parentf827de4ec41b5f5bba304f2a062b8d67690542d6 (diff)
downloadgtk+-04eceaf621aec4388bc37e10b63a49da4d2a6942.tar.gz
Use the slice allocator for many small allocations.
2006-01-04 Matthias Clasen <mclasen@redhat.com> * gtk/gtkaccelmap.c: * gtk/gtkactiongroup.c: * gtk/gtkdialog.c: * gtk/gtkfilesystemunix.c: * gtk/gtkgc.c: * gtk/gtkkeyhash.c: * gtk/gtkplug.c: * gtk/gtktextiter.c: * gtk/gtktextlayout.c: * gtk/gtkuimanager.c: * gtk/gtkwidget.c: * gtk/gtkwindow.c: * gtk/gtkxembed.c: Use the slice allocator for many small allocations. * gtk/gtkcolorsel.c: * gtk/gtktreeview.c: Use IPN. * gtk/gtkwidget.c: Remove an unused field from the AccelPath struct.
Diffstat (limited to 'gtk/gtkdialog.c')
-rw-r--r--gtk/gtkdialog.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/gtk/gtkdialog.c b/gtk/gtkdialog.c
index 6ed9952aa0..a04be42029 100644
--- a/gtk/gtkdialog.c
+++ b/gtk/gtkdialog.c
@@ -532,6 +532,12 @@ gtk_dialog_new_with_buttons (const gchar *title,
return GTK_WIDGET (dialog);
}
+static void
+response_data_free (gpointer data)
+{
+ g_slice_free (ResponseData, data);
+}
+
static ResponseData*
get_response_data (GtkWidget *widget,
gboolean create)
@@ -541,12 +547,12 @@ get_response_data (GtkWidget *widget,
if (ad == NULL && create)
{
- ad = g_new (ResponseData, 1);
+ ad = g_slice_new (ResponseData);
g_object_set_data_full (G_OBJECT (widget),
I_("gtk-dialog-response-data"),
ad,
- g_free);
+ response_data_free);
}
return ad;