diff options
-rw-r--r-- | gtk/gtkcolorbutton.c | 1 | ||||
-rw-r--r-- | gtk/gtkcolorswatch.c | 1 | ||||
-rw-r--r-- | gtk/gtkiconhelper.c | 7 |
3 files changed, 8 insertions, 1 deletions
diff --git a/gtk/gtkcolorbutton.c b/gtk/gtkcolorbutton.c index 4ef68a1875..084105a0f4 100644 --- a/gtk/gtkcolorbutton.c +++ b/gtk/gtkcolorbutton.c @@ -334,6 +334,7 @@ set_color_icon (GdkDragContext *context, paintable = gtk_snapshot_free_to_paintable (snapshot); gtk_drag_set_icon_paintable (context, paintable, 0, 0); + g_object_unref (paintable); } static void diff --git a/gtk/gtkcolorswatch.c b/gtk/gtkcolorswatch.c index a40b334c0e..5f4a8eeb41 100644 --- a/gtk/gtkcolorswatch.c +++ b/gtk/gtkcolorswatch.c @@ -178,6 +178,7 @@ drag_set_color_icon (GdkDragContext *context, paintable = gtk_snapshot_free_to_paintable (snapshot); gtk_drag_set_icon_paintable (context, paintable, 4, 4); + g_object_unref (paintable); } static void diff --git a/gtk/gtkiconhelper.c b/gtk/gtkiconhelper.c index e182836833..ca7e308870 100644 --- a/gtk/gtkiconhelper.c +++ b/gtk/gtkiconhelper.c @@ -136,7 +136,12 @@ ensure_paintable_for_gicon (GtkIconHelper *self, *symbolic = gtk_icon_info_is_symbolic (info); paintable = GDK_PAINTABLE (gtk_icon_info_load_texture (info)); if (paintable && scale != 1) - paintable = gtk_scaler_new (paintable, scale); + { + GdkPaintable *orig = paintable; + + paintable = gtk_scaler_new (orig, scale); + g_object_unref (orig); + } return paintable; } |