Mercurial > pidgin.yaz
diff pidgin/gtkblist.c @ 27996:b29eac4769e9
merge of '16bc7e72b5dd239ce65c63a388c2d39efc5b7c32'
and '31cfeb857db37f5ed2d12cf084073349436c89e5'
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Wed, 22 Jul 2009 04:15:02 +0000 |
parents | 429fce11f244 |
children | 0754698c49f4 deecc1d663c4 3a45ecbe4821 |
line wrap: on
line diff
--- a/pidgin/gtkblist.c Wed Jul 22 04:14:01 2009 +0000 +++ b/pidgin/gtkblist.c Wed Jul 22 04:15:02 2009 +0000 @@ -6980,12 +6980,9 @@ static void add_chat_cb(GtkWidget *w, PidginAddChatData *data) { - GHashTable *components; GList *tmp; PurpleChat *chat; - PurpleGroup *group; - const char *group_name; - const char *value; + GHashTable *components; components = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); @@ -7001,7 +6998,8 @@ } else { - value = gtk_entry_get_text(tmp->data); + const char *value = gtk_entry_get_text(tmp->data); + if (*value != '\0') g_hash_table_replace(components, g_strdup(g_object_get_data(tmp->data, "identifier")), @@ -7010,28 +7008,31 @@ } chat = purple_chat_new(data->chat_data.rq_data.account, - gtk_entry_get_text(GTK_ENTRY(data->alias_entry)), - components); - - group_name = pidgin_text_combo_box_entry_get_text(data->group_combo); - - group = NULL; - if ((group_name != NULL) && (*group_name != '\0') && ((group = purple_find_group(group_name)) == NULL)) - { - group = purple_group_new(group_name); - purple_blist_add_group(group, NULL); - } - - if (chat != NULL) - { + gtk_entry_get_text(GTK_ENTRY(data->alias_entry)), + components); + + if (chat != NULL) { + PurpleGroup *group; + const char *group_name; + + group_name = pidgin_text_combo_box_entry_get_text(data->group_combo); + + group = NULL; + if ((group_name != NULL) && (*group_name != '\0') && + ((group = purple_find_group(group_name)) == NULL)) + { + group = purple_group_new(group_name); + purple_blist_add_group(group, NULL); + } + purple_blist_add_chat(chat, group, NULL); - } - - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(data->autojoin))) - purple_blist_node_set_bool((PurpleBlistNode*)chat, "gtk-autojoin", TRUE); - - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(data->persistent))) - purple_blist_node_set_bool((PurpleBlistNode*)chat, "gtk-persistent", TRUE); + + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(data->autojoin))) + purple_blist_node_set_bool((PurpleBlistNode*)chat, "gtk-autojoin", TRUE); + + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(data->persistent))) + purple_blist_node_set_bool((PurpleBlistNode*)chat, "gtk-persistent", TRUE); + } gtk_widget_destroy(data->chat_data.rq_data.window); g_free(data->chat_data.default_chat_name);