changeset 11812:b72ea98397c5

[gaim-migrate @ 14103] Thanks, Sadrul. https://sourceforge.net/tracker/index.php?func=detail&aid=1336880&group_id=235&atid=300235 committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Tue, 25 Oct 2005 06:41:59 +0000
parents 924c6ba240e6
children 1f7f4f850db5
files src/gtkconv.c
diffstat 1 files changed, 11 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/gtkconv.c	Tue Oct 25 06:15:13 2005 +0000
+++ b/src/gtkconv.c	Tue Oct 25 06:41:59 2005 +0000
@@ -3687,7 +3687,7 @@
 		GaimBuddy *b;
 		GaimGtkConversation *gtkconv = NULL;
 
-		memcpy(&n, sd->data, sizeof(n));
+		n = *(GaimBlistNode **)sd->data;
 
 		if (GAIM_BLIST_NODE_IS_CONTACT(n))
 			b = gaim_contact_get_priority_buddy((GaimContact*)n);
@@ -3713,7 +3713,11 @@
 		} else {
 			c = gaim_conversation_new(GAIM_CONV_TYPE_IM, b->account, b->name);
 			gtkconv = GAIM_GTK_CONVERSATION(c);
-			gaim_gtk_conv_window_add_gtkconv(win, gtkconv);
+			if (gtkconv->win != win)
+			{
+				gaim_gtk_conv_window_remove_gtkconv(gtkconv->win, gtkconv);
+				gaim_gtk_conv_window_add_gtkconv(win, gtkconv);
+			}
 		}
 
 		/* Make this conversation the active conversation */
@@ -3741,7 +3745,11 @@
 			{
 				c = gaim_conversation_new(GAIM_CONV_TYPE_IM, account, username);
 				gtkconv = GAIM_GTK_CONVERSATION(c);
-				gaim_gtk_conv_window_add_gtkconv(win, gtkconv);
+				if (gtkconv->win != win)
+				{
+					gaim_gtk_conv_window_remove_gtkconv(gtkconv->win, gtkconv);
+					gaim_gtk_conv_window_add_gtkconv(win, gtkconv);
+				}
 			}
 		}