comparison src/protocols/jabber/jabber.c @ 3328:d183c2703508

[gaim-migrate @ 3346] Remainder of fix for Gaim crashing on non-ASCII buddy alias (Jabber "name" attribute) chars. (Thanks, A Ho-seok Lee) committer: Tailor Script <tailor@pidgin.im>
author Jim Seymour <jseymour>
date Wed, 19 Jun 2002 21:20:08 +0000
parents 52db87ab4083
children e77fcff466a1
comparison
equal deleted inserted replaced
3327:220c9f1fc75e 3328:d183c2703508
1708 } 1708 }
1709 1709
1710 /* 1710 /*
1711 * Add or remove a buddy? Change buddy's alias or group? 1711 * Add or remove a buddy? Change buddy's alias or group?
1712 */ 1712 */
1713 if(name)
1714 name = utf8_to_str(name);
1715
1713 if (BUD_SUB_TO_PEND(sub, ask) || BUD_SUBD_TO(sub, ask)) { 1716 if (BUD_SUB_TO_PEND(sub, ask) || BUD_SUBD_TO(sub, ask)) {
1714 if ((b = find_buddy(GJ_GC(gjc), buddyname)) == NULL) { 1717 if ((b = find_buddy(GJ_GC(gjc), buddyname)) == NULL) {
1715 debug_printf("adding buddy [4]: %s\n", buddyname); 1718 debug_printf("adding buddy [4]: %s\n", buddyname);
1716 b = add_buddy(GJ_GC(gjc), groupname ? groupname : _("Buddies"), buddyname, 1719 b = add_buddy(GJ_GC(gjc), groupname ? groupname : _("Buddies"), buddyname,
1717 name ? name : buddyname); 1720 name ? name : buddyname);
1746 } 1749 }
1747 } 1750 }
1748 } else if (BUD_USUB_TO_PEND(sub, ask) || BUD_USUBD_TO(sub, ask) || !strcasecmp(sub, "remove")) { 1751 } else if (BUD_USUB_TO_PEND(sub, ask) || BUD_USUBD_TO(sub, ask) || !strcasecmp(sub, "remove")) {
1749 jabber_remove_gaim_buddy(GJ_GC(gjc), buddyname); 1752 jabber_remove_gaim_buddy(GJ_GC(gjc), buddyname);
1750 } 1753 }
1754
1755 if(name)
1756 g_free(name);
1757
1751 g_free(buddyname); 1758 g_free(buddyname);
1752 1759
1753 } 1760 }
1754 1761
1755 static void jabber_handleroster(gjconn gjc, xmlnode querynode) 1762 static void jabber_handleroster(gjconn gjc, xmlnode querynode)