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 400671 - crash in Terminal: detaching of tabs
crash in Terminal: detaching of tabs
Status: RESOLVED FIXED
Product: vte
Classification: Core
Component: general
0.15.x
Other All
: High critical
: ---
Assigned To: VTE Maintainers
VTE Maintainers
: 401268 401660 402611 403224 404942 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2007-01-25 16:57 UTC by Bill Nottingham
Modified: 2007-02-06 23:50 UTC
See Also:
GNOME target: ---
GNOME version: 2.17/2.18



Description Bill Nottingham 2007-01-25 16:57:17 UTC
Version: 2.17.90

What were you doing when the application crashed?
Happens repeatedly whenever you detach a tab.


Distribution: Fedora Core release 6.90 (Rawhide)
Gnome Release: 2.17.90 2007-01-21 (Red Hat, Inc)
BugBuddy Version: 2.17.3

System: Linux 2.6.19-1.2913.fc7 #1 SMP Tue Jan 23 17:55:44 EST 2007 i686
X Vendor: The X.Org Foundation
X Vendor Release: 70200000
Selinux: No
Accessibility: Disabled

Memory status: size: 93388800 vsize: 0 resident: 93388800 share: 0 rss: 17371136 rss_rlim: 0
CPU usage: start_time: 1169743908 rtime: 0 utime: 212 stime: 0 cutime:153 cstime: 0 timeout: 59 it_real_value: 0 frequency: 0

Backtrace was generated from '/usr/bin/gnome-terminal'

Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1208248624 (LWP 18280)]
[New Thread -1220809840 (LWP 18284)]
0x00b82402 in __kernel_vsyscall ()

Thread 1 (Thread -1208248624 (LWP 18280))

  • #0 __kernel_vsyscall
  • #1 waitpid
    from /lib/libpthread.so.0
  • #2 ??
    from /usr/lib/libgnomeui-2.so.0
  • #3 <signal handler called>
  • #4 _vte_xft_font_for_char
    at vtexft.c line 160
  • #5 _vte_xft_draw_text
    at vtexft.c line 643
  • #6 _vte_draw_text
    at vtedraw.c line 302
  • #7 vte_terminal_draw_cells
    at vte.c line 8552
  • #8 vte_terminal_draw_row
    at vte.c line 9007
  • #9 vte_terminal_expose
    at vte.c line 9112
  • #10 ??
    from /usr/lib/libgtk-x11-2.0.so.0
  • #11 ??
    from /lib/libgobject-2.0.so.0
  • #12 g_closure_invoke
    from /lib/libgobject-2.0.so.0
  • #13 ??
    from /lib/libgobject-2.0.so.0
  • #14 g_signal_emit_valist
    from /lib/libgobject-2.0.so.0
  • #15 g_signal_emit
    from /lib/libgobject-2.0.so.0
  • #16 ??
    from /usr/lib/libgtk-x11-2.0.so.0
  • #17 gtk_main_do_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #18 ??
    from /usr/lib/libgdk-x11-2.0.so.0
  • #19 gdk_window_process_all_updates
    from /usr/lib/libgdk-x11-2.0.so.0
  • #20 update_regions
    at vte.c line 253
  • #21 update_timeout
    at vte.c line 11351
  • #22 ??
    from /lib/libglib-2.0.so.0
  • #23 g_main_context_dispatch
    from /lib/libglib-2.0.so.0
  • #24 ??
    from /lib/libglib-2.0.so.0
  • #25 g_main_loop_run
    from /lib/libglib-2.0.so.0
  • #26 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #27 main
    at terminal.c line 1773
  • #28 __libc_start_main
    from /lib/libc.so.6
  • #29 _start
  • #0 __kernel_vsyscall


----------- .xsession-errors ---------------------
Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x4600003 (Evince Doc)
Window manager warning: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x4600003 (Evince Doc)
Window manager warning: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
(gnome-terminal:16576): Gtk-CRITICAL **: gtk_window_set_default_size: assertion `width >= -1' failed
Window manager warning: Log level 16: /usr/lib/pango/1.6.0/modules/pango-basic-fc.so: cannot open shared object file: No such file or directory
(gnome-terminal:18280): Gtk-CRITICAL **: gtk_window_set_default_size: assertion `width >= -1' failed
--------------------------------------------------
Comment 1 Bill Nottingham 2007-01-25 17:01:33 UTC
vte version: 0.15.2
Comment 2 Chris Wilson 2007-01-25 17:39:54 UTC
A regression due to r1443; the font dirty flags needs to be set on unrealize when the VteDraw is destroyed.

The fix is trivial:

Index: src/vte.c
===================================================================
--- src/vte.c   (revision 1529)
+++ src/vte.c   (working copy)
@@ -7179,7 +7179,7 @@
                _vte_draw_free(terminal->pvt->draw);
                terminal->pvt->draw = NULL;
        }
-       terminal->pvt->has_fonts = FALSE;
+       terminal->pvt->fontdirty = TRUE;
 
        /* Unmap the widget if it hasn't been already. */
        if (GTK_WIDGET_MAPPED(widget)) {
Comment 3 Chris Wilson 2007-01-25 17:45:14 UTC
r1532: 2007-01-25  Chris Wilson <chris@chris-wilson.co.uk>

	Bug 400671 – crash in Terminal: detaching of tabs

	The fontdirty flag needed to be set on unrealize to ensure the fonts
	get set on the VteDraw should the terminal be realized again (e.g
	drag'n'dropping).

	* src/vte.c: (vte_terminal_unrealize):
		Set the fontdirty flag to TRUE.
	* src/vtexft.c: (_vte_xft_set_text_font),
	(_vte_xft_get_char_width), (_vte_xft_draw_text),
	(_vte_xft_draw_char):
		Add safe guards to avoid dereferencing a NULL font as it
		is possible for _vte_xft_font_open() to fail.

Comment 4 Mariano Suárez-Alvarez 2007-01-28 03:12:37 UTC
*** Bug 401268 has been marked as a duplicate of this bug. ***
Comment 5 Mariano Suárez-Alvarez 2007-01-29 07:30:05 UTC
*** Bug 401660 has been marked as a duplicate of this bug. ***
Comment 6 Mariano Suárez-Alvarez 2007-01-30 21:45:40 UTC
*** Bug 402611 has been marked as a duplicate of this bug. ***
Comment 7 Mariano Suárez-Alvarez 2007-02-01 22:16:45 UTC
*** Bug 403224 has been marked as a duplicate of this bug. ***
Comment 8 Chris Wilson 2007-02-06 12:16:00 UTC
*** Bug 404942 has been marked as a duplicate of this bug. ***
Comment 9 Gilles Dartiguelongue 2007-02-06 23:50:43 UTC
confirm comment #2 fixes tab detaching problem. Had to rework the patch a bit to apply cleanly to vte-0.15.2 though. Thanks for your help.