Mercurial > pidgin.yaz
diff src/list.c @ 4227:a614423c648f
[gaim-migrate @ 4471]
This is a patch from Nathan Walp that adds a
"char server_alias[BUDDY_ALIAS_MAXLEN]" to struct buddy, and a preference
option to show the server alias instead of the alias set by you. It
shouldn't cause any problems. But then again, faceprint is a crazy patch
writer, with an emphasis on crazy, if you know what I mean. Huh? Get it?
"Crazy"? I kill me. But right after I kill Time Warner.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Tue, 07 Jan 2003 17:44:34 +0000 |
parents | 988485669631 |
children | 0c68d402f59f |
line wrap: on
line diff
--- a/src/list.c Tue Jan 07 16:18:08 2003 +0000 +++ b/src/list.c Tue Jan 07 17:44:34 2003 +0000 @@ -139,7 +139,10 @@ good = buddy; g_snprintf(b->name, sizeof(b->name), "%s", good); - g_snprintf(b->show, sizeof(b->show), "%s", show ? (show[0] ? show : good) : good); + if(show && show[0]) + g_snprintf(b->alias, sizeof(b->alias), "%s", show); + else + b->alias[0] = '\0'; g->members = g_slist_append(g->members, b); @@ -476,8 +479,8 @@ while (len > pos && mem) { b = (struct buddy *)mem->data; pos += g_snprintf(&s[pos], len - pos, "b %s%s%s\n", b->name, - (show && strcmp(b->name, b->show)) ? ":" : "", - (show && strcmp(b->name, b->show)) ? b->show : ""); + (show && b->alias[0]) ? ":" : "", + (show && b->alias[0]) ? b->alias : ""); mem = mem->next; } grp = g_slist_next(grp); @@ -872,3 +875,22 @@ g = g->next; } } + +char *get_buddy_alias_only(struct buddy *b) { + if(!b) + return NULL; + if(b->alias[0]) + return b->alias; + else if((misc_options & OPT_MISC_USE_SERVER_ALIAS) && b->server_alias[0]) + return b->server_alias; + return NULL; +} + + +char *get_buddy_alias(struct buddy *b) { + char *ret = get_buddy_alias_only(b); + if(!ret) + return b ? b->name : _("Unknown"); + return ret; +} +