# HG changeset patch # User ivan.komarov@soc.pidgin.im # Date 1279577138 0 # Node ID 2d4dd38c5db5ddfd7792509b3ddfd1629419f248 # Parent c5790044f32f841edad13aa200bee31508309176 Two small fixes Mark suggested: 1. Removed unused parameter in get_buddy_list_type(). 2. Changed oscar_format_buddies() to use GString. diff -r c5790044f32f -r 2d4dd38c5db5 libpurple/protocols/oscar/util.c --- a/libpurple/protocols/oscar/util.c Sun Jul 04 01:13:11 2010 +0000 +++ b/libpurple/protocols/oscar/util.c Mon Jul 19 22:05:38 2010 +0000 @@ -392,22 +392,20 @@ oscar_format_buddies(GSList *buddies, const gchar *no_buddies_message) { GSList *cur; - gchar *result, *tmp; + GString *result; if (!buddies) { return g_strdup_printf("%s", no_buddies_message); } - result = g_strdup(""); + result = g_string_new(""); for (cur = buddies; cur != NULL; cur = cur->next) { PurpleBuddy *buddy = cur->data; const gchar *bname = purple_buddy_get_name(buddy); const gchar *alias = purple_buddy_get_alias_only(buddy); + g_string_append(result, bname); if (alias) { - tmp = g_strdup_printf("%s%s (%s)
", result, bname, alias); - } else { - tmp = g_strdup_printf("%s%s
", result, bname); + g_string_append_printf(result, " (%s)", alias); } - g_free(result); - result = tmp; + g_string_append(result, "
"); } - return result; + return g_string_free(result, FALSE); } \ No newline at end of file diff -r c5790044f32f -r 2d4dd38c5db5 libpurple/protocols/oscar/visibility.c --- a/libpurple/protocols/oscar/visibility.c Sun Jul 04 01:13:11 2010 +0000 +++ b/libpurple/protocols/oscar/visibility.c Mon Jul 19 22:05:38 2010 +0000 @@ -27,7 +27,7 @@ #define DONT_APPEAR_OFFLINE N_("Don't Appear Offline") static guint16 -get_buddy_list_type(OscarData *od, const char *bname) +get_buddy_list_type(OscarData *od) { PurpleAccount *account = purple_connection_get_account(od->gc); return purple_account_is_status_active(account, OSCAR_STATUS_ID_INVISIBLE) ? AIM_SSI_TYPE_PERMIT : AIM_SSI_TYPE_DENY; @@ -36,7 +36,7 @@ static gboolean is_buddy_on_list(OscarData *od, const char *bname) { - return aim_ssi_itemlist_finditem(od->ssi.local, NULL, bname, get_buddy_list_type(od, bname)) != NULL; + return aim_ssi_itemlist_finditem(od->ssi.local, NULL, bname, get_buddy_list_type(od)) != NULL; } static void @@ -45,7 +45,7 @@ PurpleBuddy *buddy = PURPLE_BUDDY(node); const char* bname = purple_buddy_get_name(buddy); OscarData *od = purple_connection_get_protocol_data(purple_account_get_connection(purple_buddy_get_account(buddy))); - guint16 list_type = get_buddy_list_type(od, bname); + guint16 list_type = get_buddy_list_type(od); if (!is_buddy_on_list(od, bname)) { aim_ssi_add_to_private_list(od, bname, list_type);