diff options
Diffstat (limited to 'widgets/table/e-tree-memory.c')
-rw-r--r-- | widgets/table/e-tree-memory.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/widgets/table/e-tree-memory.c b/widgets/table/e-tree-memory.c index 61200cda4c..0fe0cb79b0 100644 --- a/widgets/table/e-tree-memory.c +++ b/widgets/table/e-tree-memory.c @@ -338,12 +338,15 @@ etmm_clear_children_computed (ETreeMemoryPath *path) static void etmm_node_request_collapse (ETreeModel *etm, ETreePath node) { + ETreeModelClass *parent_class; + if (node) etmm_clear_children_computed (node); - if (E_TREE_MODEL_CLASS (e_tree_memory_parent_class)->node_request_collapse) { - E_TREE_MODEL_CLASS (e_tree_memory_parent_class)->node_request_collapse (etm, node); - } + parent_class = E_TREE_MODEL_CLASS (e_tree_memory_parent_class); + + if (parent_class->node_request_collapse != NULL) + parent_class->node_request_collapse (etm, node); } |