47 lines
1.7 KiB
Diff
47 lines
1.7 KiB
Diff
|
diff -up gtk+-2.14.2/modules/other/gail/gailcell.c.gail-leaks gtk+-2.14.2/modules/other/gail/gailcell.c
|
||
|
--- gtk+-2.14.2/modules/other/gail/gailcell.c.gail-leaks 2008-09-19 00:55:50.000000000 -0400
|
||
|
+++ gtk+-2.14.2/modules/other/gail/gailcell.c 2008-09-19 00:56:24.000000000 -0400
|
||
|
@@ -118,6 +118,7 @@ gail_cell_destroyed (GtkWidget *wi
|
||
|
* GtkWidget. We set the pointer location to NULL;
|
||
|
*/
|
||
|
cell->widget = NULL;
|
||
|
+ g_signal_handlers_disconnect_by_func (widget, gail_cell_destroyed, cell);
|
||
|
}
|
||
|
|
||
|
static void
|
||
|
diff -up gtk+-2.14.2/modules/other/gail/gailtreeview.c.gail-leaks gtk+-2.14.2/modules/other/gail/gailtreeview.c
|
||
|
--- gtk+-2.14.2/modules/other/gail/gailtreeview.c.gail-leaks 2008-09-19 00:55:02.000000000 -0400
|
||
|
+++ gtk+-2.14.2/modules/other/gail/gailtreeview.c 2008-09-19 00:55:39.000000000 -0400
|
||
|
@@ -3667,12 +3667,12 @@ static gboolean
|
||
|
garbage_collect_cell_data (gpointer data)
|
||
|
{
|
||
|
GailTreeView *tree_view;
|
||
|
- GList *temp_list;
|
||
|
+ GList *temp_list, *list;
|
||
|
GailTreeViewCellInfo *cell_info;
|
||
|
|
||
|
g_assert (GAIL_IS_TREE_VIEW (data));
|
||
|
tree_view = (GailTreeView *)data;
|
||
|
- temp_list = g_list_copy (tree_view->cell_data);
|
||
|
+ list = g_list_copy (tree_view->cell_data);
|
||
|
|
||
|
tree_view->garbage_collection_pending = FALSE;
|
||
|
if (tree_view->idle_garbage_collect_id != 0)
|
||
|
@@ -3682,6 +3682,7 @@ garbage_collect_cell_data (gpointer data
|
||
|
}
|
||
|
|
||
|
/* Must loop through them all */
|
||
|
+ temp_list = list;
|
||
|
while (temp_list != NULL)
|
||
|
{
|
||
|
cell_info = temp_list->data;
|
||
|
@@ -3696,7 +3697,7 @@ garbage_collect_cell_data (gpointer data
|
||
|
}
|
||
|
temp_list = temp_list->next;
|
||
|
}
|
||
|
- g_list_free (temp_list);
|
||
|
+ g_list_free (list);
|
||
|
|
||
|
return tree_view->garbage_collection_pending;
|
||
|
}
|