Mercurial > pidgin
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 |