GNOME Bugzilla – Bug 400671
crash in Terminal: detaching of tabs
Last modified: 2007-02-06 23:50:43 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 ()
+ Trace 105184
Thread 1 (Thread -1208248624 (LWP 18280))
----------- .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 --------------------------------------------------
vte version: 0.15.2
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)) {
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.
*** Bug 401268 has been marked as a duplicate of this bug. ***
*** Bug 401660 has been marked as a duplicate of this bug. ***
*** Bug 402611 has been marked as a duplicate of this bug. ***
*** Bug 403224 has been marked as a duplicate of this bug. ***
*** Bug 404942 has been marked as a duplicate of this bug. ***
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.