[gaim-migrate @ 5700]

Wed, 07 May 2003 15:42:53 +0000

author
Christian Hammond <chipx86@chipx86.com>
date
Wed, 07 May 2003 15:42:53 +0000
changeset 5327
c12297f29f8d
parent 5326
44370f1132dc
child 5328
f0a6558e0fcb

[gaim-migrate @ 5700]
Fixed a bug when dragging a user to a new group.

src/protocols/msn/msn.c file | annotate | diff | comparison | revisions
src/protocols/msn/notification.c file | annotate | diff | comparison | revisions
src/protocols/msn/session.h file | annotate | diff | comparison | revisions
--- a/src/protocols/msn/msn.c	Wed May 07 08:42:47 2003 +0000
+++ b/src/protocols/msn/msn.c	Wed May 07 15:42:53 2003 +0000
@@ -771,7 +771,7 @@
 
 		/* I hate this. So much. */
 		session->moving_buddy = TRUE;
-		session->dest_group_id = *new_group_id;
+		session->dest_group_name = g_strdup(new_group);
 	}
 	else {
 		g_snprintf(outparams, sizeof(outparams), "FL %s %s %d",
--- a/src/protocols/msn/notification.c	Wed May 07 08:42:47 2003 +0000
+++ b/src/protocols/msn/notification.c	Wed May 07 15:42:53 2003 +0000
@@ -749,12 +749,24 @@
 		struct gaim_connection *gc = session->account->gc;
 		const char *passport = params[3];
 		char outparams[MSN_BUF_LEN];
+		int *group_id;
+
+		group_id = g_hash_table_lookup(session->group_ids,
+									   session->dest_group_name);
+
+		g_free(session->dest_group_name);
+		session->dest_group_name = NULL;
+		session->moving_buddy = FALSE;
+
+		if (group_id == NULL) {
+			gaim_debug(GAIM_DEBUG_ERROR, "msn",
+					   "Still don't have a group ID for %s while moving %s!\n",
+					   session->dest_group_name, passport);
+			return TRUE;
+		}
 
 		g_snprintf(outparams, sizeof(outparams), "FL %s %s %d",
-				   passport, passport, session->dest_group_id);
-
-		session->moving_buddy = FALSE;
-		session->dest_group_id = 0;
+				   passport, passport, *group_id);
 
 		if (!msn_servconn_send_command(session->notification_conn,
 									   "ADD", outparams)) {
--- a/src/protocols/msn/session.h	Wed May 07 08:42:47 2003 +0000
+++ b/src/protocols/msn/session.h	Wed May 07 15:42:53 2003 +0000
@@ -72,7 +72,7 @@
 
 	/* For moving buddies from one group to another. Ugh. */
 	gboolean moving_buddy;
-	gint dest_group_id;
+	char *dest_group_name;
 };
 
 /**

mercurial