After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 346662 - epiphany crashes with latest GTK+
epiphany crashes with latest GTK+
Status: RESOLVED FIXED
Product: epiphany
Classification: Core
Component: History
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Epiphany Maintainers
Marco Pesenti Gritti
: 342915 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-07-05 15:41 UTC by Diego González
Modified: 2011-09-12 18:48 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
workaround (1.82 KB, patch)
2006-07-10 20:31 UTC, Christian Persch
committed Details | Review

Description Diego González 2006-07-05 15:41:05 UTC
if you go to epiphany's history, select several entries from the right side pane (titles of webpages visited) and then hit delete, epiphany will crash.

I'm using epiphany HEAD, don't know if the problem is en GTK+ or epiphany.

On the console i can see:

Gtk-CRITICAL **: gtk_tree_model_filter_convert_iter_to_child_iter: assertion `filter_iter->stamp == filter->priv->stamp' failed
aborting...

The backtrace is:

  • #0 __kernel_vsyscall
  • #1 raise
    from /lib/tls/i686/cmov/libc.so.6
  • #2 abort
    from /lib/tls/i686/cmov/libc.so.6
  • #3 IA__g_logv
    at gmessages.c line 497
  • #4 IA__g_log
    at gmessages.c line 517
  • #5 IA__g_return_if_fail_warning
    at gmessages.c line 532
  • #6 IA__gtk_tree_model_filter_convert_iter_to_child_iter
    at gtktreemodelfilter.c line 3048
  • #7 get_node_from_path
    at ephy-node-view.c line 167
  • #8 get_selection
    at ephy-node-view.c line 1344
  • #9 IA__gtk_tree_selection_selected_foreach
    at gtktreeselection.c line 643
  • #10 ephy_node_view_get_selection
    at ephy-node-view.c line 1360
  • #11 ephy_node_view_selection_changed_cb
    at ephy-node-view.c line 509
  • #12 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #13 IA__g_closure_invoke
    at gclosure.c line 490
  • #14 signal_emit_unlocked_R
    at gsignal.c line 2438
  • #15 IA__g_signal_emit_valist
    at gsignal.c line 2197
  • #16 IA__g_signal_emit_by_name
    at gsignal.c line 2265
  • #17 gtk_tree_view_row_deleted
    at gtktreeview.c line 8415
  • #18 IA__g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 566
  • #19 IA__g_closure_invoke
  • #20 signal_emit_unlocked_R
    at gsignal.c line 2438
  • #21 IA__g_signal_emit_valist
    at gsignal.c line 2197
  • #22 IA__g_signal_emit
    at gsignal.c line 2241
  • #23 IA__gtk_tree_model_row_deleted
    at gtktreemodel.c line 1528
  • #24 gtk_tree_model_sort_row_deleted
    at gtktreemodelsort.c line 750
  • #25 IA__g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 566
  • #26 IA__g_closure_invoke
    at gclosure.c line 490
  • #27 signal_emit_unlocked_R
    at gsignal.c line 2438
  • #28 IA__g_signal_emit_valist
    at gsignal.c line 2197
  • #29 IA__g_signal_emit
    at gsignal.c line 2241
  • #30 IA__gtk_tree_model_row_deleted
    at gtktreemodel.c line 1528
  • #31 gtk_tree_model_filter_row_deleted
    at gtktreemodelfilter.c line 1778
  • #32 IA__g_cclosure_marshal_VOID__BOXED
    at gmarshal.c line 566
  • #33 IA__g_closure_invoke
    at gclosure.c line 490
  • #34 signal_emit_unlocked_R
    at gsignal.c line 2438
  • #35 IA__g_signal_emit_valist
    at gsignal.c line 2197
  • #36 IA__g_signal_emit
    at gsignal.c line 2241
  • #37 IA__gtk_tree_model_row_deleted
    at gtktreemodel.c line 1528
  • #38 root_child_removed_cb
    at ephy-tree-model-node.c line 114
  • #39 callback
    at ephy-node.c line 158
  • #40 IA__g_hash_table_foreach
    at ghash.c line 662
  • #41 ephy_node_emit_signal
    at ephy-node.c line 189
  • #42 real_remove_child
    at ephy-node.c line 242
  • #43 remove_child
    at ephy-node.c line 256
  • #44 IA__g_hash_table_foreach
    at ghash.c line 662
  • #45 ephy_node_destroy
    at ephy-node.c line 288
  • #46 ephy_node_unref
    at ephy-node.c line 414
  • #47 ephy_node_view_remove
    at ephy-node-view.c line 1411
  • #48 cmd_delete
    at ephy-history-window.c line 456
  • #49 key_pressed_cb
    at ephy-history-window.c line 815
  • #50 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 83
  • #51 IA__g_closure_invoke
    at gclosure.c line 490
  • #52 signal_emit_unlocked_R
    at gsignal.c line 2438
  • #53 IA__g_signal_emit_valist
    at gsignal.c line 2207
  • #54 IA__g_signal_emit
    at gsignal.c line 2241
  • #55 gtk_widget_event_internal
    at gtkwidget.c line 3901
  • #56 IA__gtk_widget_event
    at gtkwidget.c line 3707
  • #57 IA__gtk_window_propagate_key_event
    at gtkwindow.c line 4671
  • #58 gtk_window_key_press_event
    at gtkwindow.c line 4701
  • #59 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 83
  • #60 g_type_class_meta_marshal
    at gclosure.c line 567
  • #61 IA__g_closure_invoke
    at gclosure.c line 490
  • #62 signal_emit_unlocked_R
  • #63 IA__g_signal_emit_valist
    at gsignal.c line 2207
  • #64 IA__g_signal_emit
    at gsignal.c line 2241
  • #65 gtk_widget_event_internal
    at gtkwidget.c line 3901
  • #66 IA__gtk_widget_event
    at gtkwidget.c line 3707
  • #67 IA__gtk_propagate_event
    at gtkmain.c line 2161
  • #68 IA__gtk_main_do_event
    at gtkmain.c line 1421
  • #69 gdk_event_dispatch
    at gdkevents-x11.c line 2320
  • #70 g_main_dispatch
    at gmain.c line 2043
  • #71 IA__g_main_context_dispatch
    at gmain.c line 2594
  • #72 g_main_context_iterate
    at gmain.c line 2675
  • #73 IA__g_main_loop_run
    at gmain.c line 2879
  • #74 IA__gtk_main
    at gtkmain.c line 1000
  • #75 main
    at ephy-main.c line 717

Comment 1 Kristian Rietveld 2006-07-05 15:49:03 UTC
Looks like Epiphany is passing invalid iterators to the filter conversion function ...
Comment 2 Christian Persch 2006-07-10 20:31:51 UTC
Created attachment 68749 [details] [review]
workaround

With this patch applied, I cannot reproduce the problem anymore.

It works around the bug by not updating the selection while we're removing the nodes.
Comment 3 Christian Persch 2006-07-20 11:02:06 UTC
I committed the work-around to gnome-2-14 and HEAD; leaving open for a real fix.
Comment 4 Rob Bradford 2006-08-16 14:37:18 UTC
*** Bug 342915 has been marked as a duplicate of this bug. ***
Comment 5 Björn Lindqvist 2006-11-21 17:18:22 UTC
Why is the patch a work-around? The EphyNodeView needs some kind of mutual exclusion to ensure that it is not iterated over while it is being deleted from, doesn't it?
Comment 6 Christian Persch 2007-01-17 19:27:11 UTC
It's a work-around because I think the problem is that the model thinks the node still exists while it's been already removed. However since the patch fixes the crash, I'm moving this off the 2.16.x milestone (however leaving it open until EphyNode dies or someone finds the real bug in the node model or node filter model).
Comment 7 Kristian Rietveld 2007-01-28 20:35:14 UTC
(#351814 has a possible gtk+ patch which makes epiphany with the workaround above reverted work without crashes).
Comment 8 Muhammet Kara 2011-07-11 21:49:30 UTC
I haven't been able to reproduce this crash on fedora with the latest epiphany release.
Comment 9 Xan Lopez 2011-09-12 18:48:31 UTC
(In reply to comment #8)
> I haven't been able to reproduce this crash on fedora with the latest epiphany
> release.

Me neither.