Mercurial > pidgin.yaz
diff src/dialogs.c @ 3348:dd34e0b40fed
[gaim-migrate @ 3367]
Support for server-side synchronization on group rename. (Thanks, Mark
Doliner)
committer: Tailor Script <tailor@pidgin.im>
| author | Jim Seymour <jseymour> |
|---|---|
| date | Sun, 07 Jul 2002 14:31:57 +0000 |
| parents | b6da58fae8b7 |
| children | 3b00d97d59aa |
line wrap: on
line diff
--- a/src/dialogs.c Fri Jul 05 22:27:40 2002 +0000 +++ b/src/dialogs.c Sun Jul 07 14:31:57 2002 +0000 @@ -3946,16 +3946,20 @@ if (new_name && (strlen(new_name) != 0) && strcmp(new_name, g->name)) { char *prevname; gc = g->gc; + if ((orig = find_group(g->gc, new_name)) != NULL && g_strcasecmp(new_name, g->name)) { orig->members = g_slist_concat(orig->members, g->members); handle_group_rename(orig, g->name); g->gc->groups = g_slist_remove(g->gc->groups, g); /* FIXME, i don't like calling this. it's sloppy. */ build_edit_tree(); + serv_rename_group(gc, g, new_name); g_free(g); } else { prevname = g_strdup(g->name); + serv_rename_group(gc, g, new_name); g_snprintf(g->name, sizeof(g->name), "%s", new_name); handle_group_rename(g, prevname); + /* FIXME, i don't like calling this. it's sloppy. */ build_edit_tree(); g_free(prevname); } do_export(gc);
