--- a/src/protocols/oscar/oscar.c Fri Jun 10 04:42:40 2005 +0000 +++ b/src/protocols/oscar/oscar.c Sat Jun 11 22:30:08 2005 +0000 @@ -5913,12 +5913,16 @@ /* Make a list of what the groups each buddy is in */ for (cur = moved_buddies; cur != NULL; cur = cur->next) { GaimBlistNode *node = cur->data; - groups = g_list_append(groups, node->parent); + /* node is GaimBuddy, parent is a GaimContact. + * We must go two levels up to get the Group */ + groups = g_list_append(groups, + node->parent->parent); } serv_remove_buddies(gc, moved_buddies, groups); serv_add_buddies(gc, moved_buddies); g_list_free(groups); + /** XXX: Shouldn't be we deleting the old group on the server here??? */ gaim_debug_info("oscar", "ssi: moved all buddies from group %s to %s\n", old_name, group->name); } else {