libpurple/buddyicon.c

branch
soc.2013.gobjectification
changeset 34781
2cfb31e2f6dd
parent 34768
d193657a4b37
child 34787
d736bcb6c5a1
--- a/libpurple/buddyicon.c	Mon Jul 15 19:40:11 2013 +0530
+++ b/libpurple/buddyicon.c	Mon Jul 15 19:41:51 2013 +0530
@@ -1135,9 +1135,10 @@
 static PurpleBuddyIcon *
 purple_buddy_icon_copy(PurpleBuddyIcon *icon)
 {
-	return purple_buddy_icon_new(icon->account, icon->username,
-			(void *)purple_imgstore_get_data(icon->img),
-			purple_imgstore_get_size(icon->img), icon->checksum);
+	PurpleBuddyIcon *icon_copy = g_new(PurpleBuddyIcon, 1);
+	*icon_copy = *icon;
+
+	return icon_copy;
 }
 
 GType
@@ -1148,7 +1149,7 @@
 	if (type == 0) {
 		type = g_boxed_type_register_static("PurpleBuddyIcon",
 				(GBoxedCopyFunc)purple_buddy_icon_copy,
-				(GBoxedFreeFunc)purple_buddy_icon_unref);
+				(GBoxedFreeFunc)g_free);
 	}
 
 	return type;

mercurial