aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-cell-pixbuf.c
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/table/e-cell-pixbuf.c')
-rw-r--r--widgets/table/e-cell-pixbuf.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/widgets/table/e-cell-pixbuf.c b/widgets/table/e-cell-pixbuf.c
index 38fb1ae59d..1d9967d23b 100644
--- a/widgets/table/e-cell-pixbuf.c
+++ b/widgets/table/e-cell-pixbuf.c
@@ -97,6 +97,9 @@ pixbuf_new_view (ECell *ecell, ETableModel *table_model, void *e_table_item_view
pixbuf_view->cell_view.ecell = ecell;
pixbuf_view->cell_view.e_table_model = table_model;
pixbuf_view->cell_view.e_table_item_view = e_table_item_view;
+ pixbuf_view->cell_view.kill_view_cb = NULL;
+ pixbuf_view->cell_view.kill_view_cb_data = NULL;
+
pixbuf_view->canvas = canvas;
return (ECellView *) pixbuf_view;
@@ -107,6 +110,12 @@ pixbuf_kill_view (ECellView *ecell_view)
{
ECellPixbufView *pixbuf_view = (ECellPixbufView *) ecell_view;
+ if (pixbuf_view->cell_view.kill_view_cb)
+ (pixbuf_view->cell_view.kill_view_cb)(ecell_view, pixbuf_view->cell_view.kill_view_cb_data);
+
+ if (pixbuf_view->cell_view.kill_view_cb_data)
+ g_list_free(pixbuf_view->cell_view.kill_view_cb_data);
+
g_free (pixbuf_view);
}