# HG changeset patch # User Sadrul Habib Chowdhury # Date 1210133119 0 # Node ID 9c0a47402f7a14fbf1921fdfffa36166d27a8ede # Parent ac567757d2366b2ec49c8790fa33aab6c9a62d08 Unref some gdkpixbufs to plug some memory leaks. References #1187. diff -r ac567757d236 -r 9c0a47402f7a pidgin/gtkimhtmltoolbar.c --- a/pidgin/gtkimhtmltoolbar.c Wed May 07 03:32:43 2008 +0000 +++ b/pidgin/gtkimhtmltoolbar.c Wed May 07 04:05:19 2008 +0000 @@ -630,15 +630,13 @@ if (size.width > 24) { /* This is a custom smiley, let's scale it */ GdkPixbuf *pixbuf = NULL; - GdkPixbuf *resized; GtkImageType type; type = gtk_image_get_storage_type(GTK_IMAGE(image)); if (type == GTK_IMAGE_PIXBUF) { pixbuf = gtk_image_get_pixbuf(GTK_IMAGE(image)); - } - else if (type == GTK_IMAGE_ANIMATION) { + } else if (type == GTK_IMAGE_ANIMATION) { GdkPixbufAnimation *animation; animation = gtk_image_get_animation(GTK_IMAGE(image)); @@ -647,11 +645,14 @@ } if (pixbuf != NULL) { + GdkPixbuf *resized; resized = gdk_pixbuf_scale_simple(pixbuf, 24, 24, GDK_INTERP_HYPER); image = gtk_image_new_from_pixbuf(resized); gtk_widget_size_request(image, &size); + g_object_unref(G_OBJECT(pixbuf)); + g_object_unref(G_OBJECT(resized)); } } diff -r ac567757d236 -r 9c0a47402f7a pidgin/gtksmiley.c --- a/pidgin/gtksmiley.c Wed May 07 03:32:43 2008 +0000 +++ b/pidgin/gtksmiley.c Wed May 07 04:05:19 2008 +0000 @@ -449,6 +449,7 @@ if (smiley_image != NULL) sized_smiley = gdk_pixbuf_scale_simple(smiley_image, 22, 22, GDK_INTERP_HYPER); + g_object_unref(G_OBJECT(smiley_image)); }