From d98d12f99aef8f32f08b1c2bfaaa0eaf73f36df5 Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Sun, 25 May 2003 20:41:38 +0000 Subject: Unlink the node from the childs only after the remove from parent signal 2003-05-25 Marco Pesenti Gritti * lib/ephy-node.c: (ephy_node_dispose): Unlink the node from the childs only after the remove from parent signal has been emitted. --- ChangeLog | 7 +++++++ lib/ephy-node.c | 10 +++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index b76b6fd7b..cf6ef0294 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2003-05-25 Marco Pesenti Gritti + + * lib/ephy-node.c: (ephy_node_dispose): + + Unlink the node from the childs only after the remove + from parent signal has been emitted. + 2003-05-25 Marco Pesenti Gritti * configure.in: diff --git a/lib/ephy-node.c b/lib/ephy-node.c index 35c7f87d6..aaea35ef2 100644 --- a/lib/ephy-node.c +++ b/lib/ephy-node.c @@ -283,6 +283,11 @@ ephy_node_dispose (EphyNode *node) lock_gdk (); + /* remove from DAG */ + g_hash_table_foreach (node->parents, + (GHFunc) remove_child, + node); + for (i = 0; i < node->children->len; i++) { EphyNode *child; @@ -295,11 +300,6 @@ ephy_node_dispose (EphyNode *node) g_static_rw_lock_writer_unlock (child->lock); } - /* remove from DAG */ - g_hash_table_foreach (node->parents, - (GHFunc) remove_child, - node); - g_static_rw_lock_writer_unlock (node->lock); ephy_node_emit_signal (node, EPHY_NODE_DESTROYED); -- cgit v1.2.3