pidgin/gtkaccount.c

changeset 21126
a90edce62548
parent 21123
7dbce8723eff
child 21381
d28824be6224
child 21453
a90cf329cd48
equal deleted inserted replaced
21125:e7cd2426e511 21126:a90edce62548
210 GdkPixbufLoader *loader = gdk_pixbuf_loader_new(); 210 GdkPixbufLoader *loader = gdk_pixbuf_loader_new();
211 gdk_pixbuf_loader_write(loader, purple_imgstore_get_data(dialog->icon_img), 211 gdk_pixbuf_loader_write(loader, purple_imgstore_get_data(dialog->icon_img),
212 purple_imgstore_get_size(dialog->icon_img), NULL); 212 purple_imgstore_get_size(dialog->icon_img), NULL);
213 gdk_pixbuf_loader_close(loader, NULL); 213 gdk_pixbuf_loader_close(loader, NULL);
214 pixbuf = gdk_pixbuf_loader_get_pixbuf(loader); 214 pixbuf = gdk_pixbuf_loader_get_pixbuf(loader);
215 if (pixbuf)
216 g_object_ref(pixbuf);
217 g_object_unref(loader);
215 } 218 }
216 219
217 if (pixbuf && dialog->prpl_info && 220 if (pixbuf && dialog->prpl_info &&
218 (dialog->prpl_info->icon_spec.scale_rules & PURPLE_ICON_SCALE_DISPLAY)) 221 (dialog->prpl_info->icon_spec.scale_rules & PURPLE_ICON_SCALE_DISPLAY))
219 { 222 {
2054 2057
2055 purple_imgstore_unref(img); 2058 purple_imgstore_unref(img);
2056 2059
2057 if (buddyicon_pixbuf != NULL) { 2060 if (buddyicon_pixbuf != NULL) {
2058 buddyicon = gdk_pixbuf_scale_simple(buddyicon_pixbuf, 22, 22, GDK_INTERP_HYPER); 2061 buddyicon = gdk_pixbuf_scale_simple(buddyicon_pixbuf, 22, 22, GDK_INTERP_HYPER);
2059 g_object_unref(G_OBJECT(buddyicon_pixbuf));
2060 } 2062 }
2063
2064 g_object_unref(loader);
2061 } 2065 }
2062 2066
2063 gtk_list_store_set(store, iter, 2067 gtk_list_store_set(store, iter,
2064 COLUMN_ICON, pixbuf, 2068 COLUMN_ICON, pixbuf,
2065 COLUMN_BUDDYICON, buddyicon, 2069 COLUMN_BUDDYICON, buddyicon,

mercurial