diff pidgin/gtkconv.c @ 27994:c43c87965db9

merge of '2c429e7e623da14e68de42a031909190e1f9dbac' and '481dcc62a70f66aaa407732e9195d711b6d6b17c'
author Etan Reisner <pidgin@unreliablesource.net>
date Wed, 22 Jul 2009 02:36:28 +0000
parents 605b950f4644 429fce11f244
children
line wrap: on
line diff
--- a/pidgin/gtkconv.c	Wed Jul 22 02:35:10 2009 +0000
+++ b/pidgin/gtkconv.c	Wed Jul 22 02:36:28 2009 +0000
@@ -3293,7 +3293,7 @@
 				purple_blist_node_set_flags((PurpleBlistNode *)buddy,
 						PURPLE_BLIST_NODE_FLAG_NO_SAVE);
 				g_object_set_data_full(G_OBJECT(gtkconv->imhtml), "transient_buddy",
-						buddy, (GDestroyNotify)purple_blist_remove_buddy);
+						buddy, (GDestroyNotify)purple_buddy_destroy);
 			}
 		}
 	}
@@ -4939,6 +4939,7 @@
 
 	gtk_widget_set_name(gtkconv->imhtml, "pidgin_conv_imhtml");
 	gtk_imhtml_show_comments(GTK_IMHTML(gtkconv->imhtml),TRUE);
+	g_object_set_data(G_OBJECT(gtkconv->imhtml), "gtkconv", gtkconv);
 
 	gtk_scrolled_window_get_policy(GTK_SCROLLED_WINDOW(imhtml_sw),
 	                               &imhtml_sw_hscroll, NULL);
@@ -6984,12 +6985,20 @@
 		icon = purple_conv_im_get_icon(PURPLE_CONV_IM(conv));
 
 		if (icon == NULL)
+		{
+			gtk_widget_set_size_request(gtkconv->u.im->icon_container,
+			                            -1, BUDDYICON_SIZE_MIN);
 			return;
+		}
 
 		data = purple_buddy_icon_get_data(icon, &len);
 
 		if (data == NULL)
+		{
+			gtk_widget_set_size_request(gtkconv->u.im->icon_container,
+			                            -1, BUDDYICON_SIZE_MIN);
 			return;
+		}
 	}
 
 	loader = gdk_pixbuf_loader_new();