Let's kill bug #351814
- From: "Diego Escalante" <diego aureal com pe>
- To: "epiphany list" <epiphany-list gnome org>
- Subject: Let's kill bug #351814
- Date: Tue, 24 Oct 2006 04:30:07 -0500
Bug 351814 – crash while deleting more than 1 bookmark in bm-editor
With LOTS of dups, this is a serious bug and also a very weird one.
I tried to figure where is the problem with my humble g_print()
abilities but I only got more questions to ask.
I'm pasting my comment on that bug (#25) so if anyone wants to fix
this at least you got a starting point:
----------------------
Ok, I have been trying to find reasons why this happens.
Some info I have gathered:
1. In lib/widgets/ephy-node-view.c: ephy_node_view_remove() and
get_node_from_path() call gtk_tree_model_filter_convert_iter_to_child_iter()
giving an already inited GtkTreeIter (documentation says this is not good).
Changing this doesn't solve the problem.
2. History window had a similar problem that was workaround'd in bug #346662.
3. ephy_node_view_remove() calls ephy_node_view_get_selection() to get the
selected items and then does:
for (l = list; l; l = l->next)
{
ephy_node_unref (l->data);
}
BUT!, ephy_node_unref() is called only _once_ no matter how many elements you
have selected. I understand/guess that this is wrong and that since it's a for
over a list it should go again and again until "l" is NULL.
Instead there's a lot of calls to get_selection() (I see one call for each
element selected, I guess that's not ok :/), this buddy calls
get_node_from_path().
4. The real crash seems to be in get_node_from_path().
--------
Point 3 is the one that confuses me more, also point 2 because the
problem was the same but the fix only works for history not for
bookmarks.
Well, let's hope this drives attention to #351814.
See ya
--
"First they ignore you, then they laugh at you, then they fight you,
then you win" -Ghandi
http://diego.aureal.com.pe
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]