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 727689 - Crash with particular files when tabs detached across separate windows and focusing the window
Crash with particular files when tabs detached across separate windows and fo...
Status: RESOLVED NOTABUG
Product: gedit
Classification: Applications
Component: general
3.12.x
Other Linux
: Normal major
: ---
Assigned To: Gedit maintainers
Gedit maintainers
: 739510 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2014-04-06 01:38 UTC by Jean-François Fortin Tam
Modified: 2014-11-04 21:57 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
screencast (916.46 KB, application/octet-stream)
2014-11-01 18:39 UTC, Jean-François Fortin Tam
Details

Description Jean-François Fortin Tam 2014-04-06 01:38:34 UTC
I'm not is a position to try out Gedit 3.12 for the time being, but I encountered a crasher with 3.10 and since those are pretty rare I thought it would be good to report it:

(gdb) bt full
  • #0 gcp_scrollbar_marker_update_spacing
    from /usr/lib64/gedit/plugins/libgcp.so
  • #1 g_closure_invoke
    at gclosure.c line 777
  • #2 signal_emit_unlocked_R
    at gsignal.c line 3586
  • #3 g_signal_emit_valist
    at gsignal.c line 3330
  • #4 g_signal_emit
    at gsignal.c line 3386
  • #5 _g_closure_invoke_va
    at gclosure.c line 840
  • #6 g_signal_emit_valist
    at gsignal.c line 3238
  • #7 g_signal_emit
    at gsignal.c line 3386
  • #8 gtk_style_context_do_invalidate
    at gtkstylecontext.c line 3143
  • #9 _gtk_style_context_validate
    at gtkstylecontext.c line 3346
  • #10 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #11 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #12 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #13 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #14 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #15 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #16 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #17 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #18 _gtk_style_context_validate
    at gtkstylecontext.c line 3352
  • #19 gtk_container_idle_sizer
    at gtkcontainer.c line 1684
  • #20 _g_closure_invoke_va
    at gclosure.c line 840
  • #21 g_signal_emit_valist
    at gsignal.c line 3238
  • #22 g_signal_emit_by_name
    at gsignal.c line 3426
  • #23 gdk_frame_clock_paint_idle
    at gdkframeclockidle.c line 408
  • #24 gdk_threads_dispatch
    at gdk.c line 804
  • #25 g_timeout_dispatch
    at gmain.c line 4451
  • #26 g_main_dispatch
    at gmain.c line 3066
  • #27 g_main_context_dispatch
    at gmain.c line 3642
  • #28 g_main_context_iterate
    at gmain.c line 3713
  • #29 g_main_context_iteration
    at gmain.c line 3774
  • #30 g_application_run
    at gapplication.c line 1635
  • #31 main
    at gedit.c line 68

Comment 1 Jean-François Fortin Tam 2014-04-06 01:41:40 UTC
Demonstration: http://jeff.ecchi.ca/public/gedit-727689.webm
Samples used in the video: http://jeff.ecchi.ca/public/gedit-727689-samples.tar
Comment 2 sébastien lafargue 2014-04-06 10:16:44 UTC
Hi, work for me in 3.12 with your samples.
It will be great if you find a way to try with 3.12 too.
Comment 3 Jean-François Fortin Tam 2014-05-12 03:57:39 UTC
I can now reproduce this in 3.12 (from the Fedora 20 COPR). I just extracted those two files to /tmp/, opened them up with gedit, and tried to "tear off" one of the tabs.

I get a bunch of these before the segfault:

Gtk-CRITICAL **: gtk_text_tag_table_remove: assertion 'tag->priv->table == table' failed
Gtk-CRITICAL **: gtk_text_tag_table_remove: assertion 'tag->priv->table == table' failed
Gtk-CRITICAL **: gtk_text_tag_table_remove: assertion 'tag->priv->table == table' failed
Gtk-CRITICAL **: gtk_text_tag_table_remove: assertion 'tag->priv->table == table' failed
Gtk-CRITICAL **: gtk_text_tag_table_remove: assertion 'tag->priv->table == table' failed
Program received signal SIGSEGV, Segmentation fault.
0x00007fffdd5d7f6a in gcp_scrollbar_marker_update_spacing () from /usr/lib64/gedit/plugins/libgcp.so
(gdb) bt full
  • #0 gcp_scrollbar_marker_update_spacing
    from /usr/lib64/gedit/plugins/libgcp.so
  • #1 g_closure_invoke
    at gclosure.c line 768
  • #2 signal_emit_unlocked_R
    at gsignal.c line 3551
  • #3 g_signal_emit_valist
    at gsignal.c line 3307
  • #4 g_signal_emit
    at gsignal.c line 3363
  • #5 _g_closure_invoke_va
    at gclosure.c line 831
  • #6 g_signal_emit_valist
    at gsignal.c line 3215
  • #7 g_signal_emit
    at gsignal.c line 3363
  • #8 gtk_style_context_do_invalidate
    at gtkstylecontext.c line 3054
  • #9 _gtk_style_context_validate
    at gtkstylecontext.c line 3252
  • #10 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #11 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #12 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #13 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #14 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #15 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #16 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #17 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #18 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #19 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #20 _gtk_style_context_validate
    at gtkstylecontext.c line 3263
  • #21 gtk_container_idle_sizer
    at gtkcontainer.c line 1740
  • #22 _g_closure_invoke_va
    at gclosure.c line 831
  • #23 g_signal_emit_valist
    at gsignal.c line 3215
  • #24 g_signal_emit_by_name
    at gsignal.c line 3403
  • #25 gdk_frame_clock_paint_idle
    at gdkframeclockidle.c line 408
  • #26 gdk_threads_dispatch
    at gdk.c line 635
  • #27 g_timeout_dispatch
    at gmain.c line 4472
  • #28 g_main_dispatch
    at gmain.c line 3064
  • #29 g_main_context_dispatch
    at gmain.c line 3663
  • #30 g_main_context_iterate
    at gmain.c line 3734
  • #31 g_main_context_iteration
    at gmain.c line 3795
  • #32 g_application_run
    at gapplication.c line 2114
  • #33 main
    at gedit/gedit.c line 114

Comment 4 Jean-François Fortin Tam 2014-11-01 18:38:00 UTC
Actually bug #739510 is a dupe of this. Description/repro instructions:

Opening my Pitivi 0.94 release notes text file, if I tell gedit to move that document tab to a separate window, or if I open two gedit windows and load that document, gedit crashes like trace #234291
Comment 5 Jean-François Fortin Tam 2014-11-01 18:38:15 UTC
*** Bug 739510 has been marked as a duplicate of this bug. ***
Comment 6 Jean-François Fortin Tam 2014-11-01 18:39:45 UTC
Created attachment 289800 [details]
screencast

And here's a video demonstration of how to trigger the crash from the perspective of bug #739510.
Comment 7 sébastien lafargue 2014-11-03 20:40:37 UTC
Hi,

You seem to have an old gedit-code-assistance plugin triggering this error, please retry after deactivating it.
Comment 8 Jean-François Fortin Tam 2014-11-04 04:00:33 UTC
Indeed, disabling the code assistance plugin (funny: it segfaulted gedit immediately when you deactivate it!) made tabs tearoff work without segfaulting now.
Comment 9 Jean-François Fortin Tam 2014-11-04 15:09:52 UTC
Does that mean it's fixed in 3.14?
Comment 10 sébastien lafargue 2014-11-04 21:57:04 UTC
It mean that it's a gedit-code-assistance fault which has been re-written since,
so if you want to use gedit-code-assistance, get the last version which need gnome-code-assistance and some dependencies for the backends.