comparison pidgin/gtkconv.c @ 32519:13d06d60fc49

*** Plucked rev d1d77da56217f3a083e1d459bef054db9f1d5699 (qulogic@pidgin.im): Rearrange code to prevent a NULL-deference. Thanks to clh for pointing out this issue. Closes #14392.
author Mark Doliner <mark@kingant.net>
date Sat, 18 Feb 2012 23:00:10 +0000
parents a8f62638417e
children 0c2efa69492b 626c339b60ae
comparison
equal deleted inserted replaced
32518:0087049160ad 32519:13d06d60fc49
6214 model = gtk_tree_view_get_model(GTK_TREE_VIEW(gtkchat->list)); 6214 model = gtk_tree_view_get_model(GTK_TREE_VIEW(gtkchat->list));
6215 6215
6216 if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(model), &iter)) 6216 if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(model), &iter))
6217 return; 6217 return;
6218 6218
6219 old_cbuddy = purple_conv_chat_cb_find(chat, old_name);
6220 if (get_iter_from_chatbuddy(old_cbuddy, &iter)) {
6221 GtkTreeRowReference *ref = old_cbuddy->ui_data;
6222
6223 gtk_list_store_remove(GTK_LIST_STORE(model), &iter);
6224 gtk_tree_row_reference_free(ref);
6225 old_cbuddy->ui_data = NULL;
6226 }
6227
6228 if ((tag = get_buddy_tag(conv, old_name, 0, FALSE))) 6219 if ((tag = get_buddy_tag(conv, old_name, 0, FALSE)))
6229 g_object_set(G_OBJECT(tag), "style", PANGO_STYLE_ITALIC, NULL); 6220 g_object_set(G_OBJECT(tag), "style", PANGO_STYLE_ITALIC, NULL);
6230 if ((tag = get_buddy_tag(conv, old_name, PURPLE_MESSAGE_NICK, FALSE))) 6221 if ((tag = get_buddy_tag(conv, old_name, PURPLE_MESSAGE_NICK, FALSE)))
6231 g_object_set(G_OBJECT(tag), "style", PANGO_STYLE_ITALIC, NULL); 6222 g_object_set(G_OBJECT(tag), "style", PANGO_STYLE_ITALIC, NULL);
6232 6223
6224 old_cbuddy = purple_conv_chat_cb_find(chat, old_name);
6233 if (!old_cbuddy) 6225 if (!old_cbuddy)
6234 return; 6226 return;
6227
6228 if (get_iter_from_chatbuddy(old_cbuddy, &iter)) {
6229 GtkTreeRowReference *ref = old_cbuddy->ui_data;
6230
6231 gtk_list_store_remove(GTK_LIST_STORE(model), &iter);
6232 gtk_tree_row_reference_free(ref);
6233 old_cbuddy->ui_data = NULL;
6234 }
6235 6235
6236 g_return_if_fail(new_alias != NULL); 6236 g_return_if_fail(new_alias != NULL);
6237 6237
6238 new_cbuddy = purple_conv_chat_cb_find(chat, new_name); 6238 new_cbuddy = purple_conv_chat_cb_find(chat, new_name);
6239 6239