disconnect the "group_info_changed" signal on the old sort_info and
* e-table.c (e_table_set_state_object): disconnect the "group_info_changed" signal on the old sort_info and connect it to the new one. (Noticed because of a gtk warning in et_destroy, but probably fixes some actual bug(s) too.) svn path=/trunk/; revision=6809
This commit is contained in:
+12
-2
@@ -731,11 +731,21 @@ e_table_set_state_object(ETable *e_table, ETableState *state)
|
||||
if (e_table->header)
|
||||
gtk_object_ref(GTK_OBJECT(e_table->header));
|
||||
|
||||
if (e_table->sort_info)
|
||||
if (e_table->sort_info) {
|
||||
if (e_table->group_info_change_id)
|
||||
gtk_signal_disconnect (GTK_OBJECT (e_table->sort_info),
|
||||
e_table->group_info_change_id);
|
||||
gtk_object_unref(GTK_OBJECT(e_table->sort_info));
|
||||
}
|
||||
e_table->sort_info = state->sort_info;
|
||||
if (e_table->sort_info)
|
||||
if (e_table->sort_info) {
|
||||
gtk_object_ref(GTK_OBJECT(e_table->sort_info));
|
||||
e_table->group_info_change_id =
|
||||
gtk_signal_connect (GTK_OBJECT (e_table->sort_info),
|
||||
"group_info_changed",
|
||||
GTK_SIGNAL_FUNC (sort_info_changed),
|
||||
e_table);
|
||||
}
|
||||
|
||||
if (e_table->header_item)
|
||||
gtk_object_set(GTK_OBJECT(e_table->header_item),
|
||||
|
||||
Reference in New Issue
Block a user