comparison pidgin/gtkconv.c @ 32686:5a379d8a72c1

Ref/unref the theme for a conversation.
author Elliott Sales de Andrade <qulogic@pidgin.im>
date Sun, 25 Sep 2011 05:47:54 +0000
parents 73d04f4b18ee
children 0f94ec89f0bc 1d09b9077181
comparison
equal deleted inserted replaced
32684:459ffa11348e 32686:5a379d8a72c1
5591 gtkconv->unseen_state = PIDGIN_UNSEEN_NONE; 5591 gtkconv->unseen_state = PIDGIN_UNSEEN_NONE;
5592 gtkconv->unseen_count = 0; 5592 gtkconv->unseen_count = 0;
5593 theme = purple_theme_manager_find_theme(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/theme"), "conversation"); 5593 theme = purple_theme_manager_find_theme(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/theme"), "conversation");
5594 if (!theme) 5594 if (!theme)
5595 theme = purple_theme_manager_find_theme("Default", "conversation"); 5595 theme = purple_theme_manager_find_theme("Default", "conversation");
5596 gtkconv->theme = PIDGIN_CONV_THEME(theme); 5596 gtkconv->theme = PIDGIN_CONV_THEME(g_object_ref(theme));
5597 gtkconv->last_flags = 0; 5597 gtkconv->last_flags = 0;
5598 5598
5599 if (conv_type == PURPLE_CONV_TYPE_IM) { 5599 if (conv_type == PURPLE_CONV_TYPE_IM) {
5600 gtkconv->u.im = g_malloc0(sizeof(PidginImPane)); 5600 gtkconv->u.im = g_malloc0(sizeof(PidginImPane));
5601 } else if (conv_type == PURPLE_CONV_TYPE_CHAT) { 5601 } else if (conv_type == PURPLE_CONV_TYPE_CHAT) {
5795 g_list_free(gtkconv->send_history); 5795 g_list_free(gtkconv->send_history);
5796 5796
5797 if (gtkconv->attach.timer) { 5797 if (gtkconv->attach.timer) {
5798 g_source_remove(gtkconv->attach.timer); 5798 g_source_remove(gtkconv->attach.timer);
5799 } 5799 }
5800
5801 g_object_unref(gtkconv->theme);
5800 5802
5801 g_free(gtkconv); 5803 g_free(gtkconv);
5802 } 5804 }
5803 5805
5804 5806