summaryrefslogtreecommitdiff
path: root/gtk/gtklabel.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2011-02-02 22:05:26 -0500
committerMatthias Clasen <mclasen@redhat.com>2011-02-02 22:05:26 -0500
commit7894ff4bcbdb4c19c4f52d1d5e043377355e0e52 (patch)
tree52bd3432a7ef16387aaffeca509c6cc26f46256b /gtk/gtklabel.c
parenta7a606e61a61f71ec6e347055d5251b604ffa93c (diff)
downloadgtk+-7894ff4bcbdb4c19c4f52d1d5e043377355e0e52.tar.gz
Don't g_object_unref cairo surfaces
This was causing warnings when dragging text from labels.
Diffstat (limited to 'gtk/gtklabel.c')
-rw-r--r--gtk/gtklabel.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c
index 12b0d6a33c..a99f7a1b63 100644
--- a/gtk/gtklabel.c
+++ b/gtk/gtklabel.c
@@ -4883,22 +4883,24 @@ drag_begin_cb (GtkWidget *widget,
if (end > len)
end = len;
-
+
if (start > len)
start = len;
-
- surface = _gtk_text_util_create_drag_icon (widget,
- priv->text + start,
- end - start);
+
+ surface = _gtk_text_util_create_drag_icon (widget,
+ priv->text + start,
+ end - start);
}
if (surface)
- gtk_drag_set_icon_surface (context, surface);
+ {
+ gtk_drag_set_icon_surface (context, surface);
+ cairo_surface_destroy (surface);
+ }
else
- gtk_drag_set_icon_default (context);
-
- if (surface)
- g_object_unref (surface);
+ {
+ gtk_drag_set_icon_default (context);
+ }
}
static gboolean