GNOME Bugzilla – Bug 348814
crash on Terminal
Last modified: 2007-01-27 18:13:17 UTC
What were you doing when the application crashed? 1. File/New Tab 2. Tab/Detach Tab 3. Close new terminal window 4. Crash Distribution: Ubuntu 6.10 (edgy) Gnome Release: 2.15.90 2006-07-24 (Ubuntu) BugBuddy Version: 2.15.90 Memory status: size: 72491008 vsize: 0 resident: 72491008 share: 0 rss: 15634432 rss_rlim: 0 CPU usage: start_time: 1153929200 rtime: 0 utime: 180 stime: 0 cutime:160 cstime: 0 timeout: 20 it_real_value: 0 frequency: 0 Backtrace was generated from '/usr/bin/gnome-terminal' (no debugging symbols found) Using host libthread_db library "/lib/libthread_db.so.1". (no debugging symbols found) [Thread debugging using libthread_db enabled] [New Thread -1225959760 (LWP 5413)] [New Thread -1267778640 (LWP 5417)] (no debugging symbols found) 0xb77843c1 in __waitpid_nocancel () from /lib/libpthread.so.0
+ Trace 69656
Thread 2 (Thread -1267778640 (LWP 5417))
This is caused by the recent font setting changes. Aivars, can you cook a patch please? Here is the correct stacktrace: Program received signal SIGSEGV, Segmentation fault.
+ Trace 69658
Thread NaN (LWP 10508)
Apparently by not doing the set_font_full in realize, a NULL font is reaching the drawing functions if you detach a tab.
Created attachment 69709 [details] [review] fix This patch seems to fix the bug. Draw structure is deleted later in vte_terminal_finalize().
Thanks. 2006-07-27 Behdad Esfahbod <behdad@gnome.org> Bug 348814 – crash on Terminal Patch from Aivars Kalvans * src/vte.c (vte_terminal_unrealize): Do not dispose draw in unrealize.
*** Bug 348979 has been marked as a duplicate of this bug. ***
*** Bug 349409 has been marked as a duplicate of this bug. ***
Aivars, The fix here causes a reference cycle between the vte widget and the draw object, causing that neither is ever freed, causing Bug 351494. I was going to use weak refs in draw to not keep the widget frome being finalized, but then I figured that I think we really should dispose and recreate draw in unrealize/realize, because the display may change in between. That's the entire point of unrealize/realize. Can you rework your font stuff to fix this? We are almost in code freeze now, so I have to take the safes route to an stable release for GNOME 2.16 as soon as possible. Thanks.
Please follow up in bug 351494.
Created attachment 71392 [details] [review] fix to fix Hope this fixes the bug and does not introduce any new bugs.
Thanks. Looks good. I'll test and commit later.
2006-08-22 Behdad Esfahbod <behdad@gnome.org> Bug 351494 – Gnome-terminal doesn't kills bash on tab close Patch from Aivars Kalvans * src/vte.c (vte_terminal_unrealize): Undo the change from bug 348814. Dispose draw in unrealize again, but also set has_fonts to FALSE.
*** Bug 356434 has been marked as a duplicate of this bug. ***
*** Bug 354993 has been marked as a duplicate of this bug. ***
*** Bug 353599 has been marked as a duplicate of this bug. ***
Just like bug 348979 (see comment 4) I believe the above 3 bugs to be duplicates as well.
Shuffling dupes around... Behdad, the patch in comment 10 has been committed before the Hard Code Freeze. Thus, this fix should be in g-t 2.16.0. However, bug 354993 got the exact same stacktrace as bug 348979 -- using g-t 2.16.0. Something is fishy here... Is bug 348979 really a duplicate of this one? See bug 348979 comment 5.
*** Bug 364882 has been marked as a duplicate of this bug. ***
*** Bug 365152 has been marked as a duplicate of this bug. ***
*** Bug 365178 has been marked as a duplicate of this bug. ***
*** Bug 365260 has been marked as a duplicate of this bug. ***
*** Bug 365251 has been marked as a duplicate of this bug. ***
*** Bug 366162 has been marked as a duplicate of this bug. ***
*** Bug 366138 has been marked as a duplicate of this bug. ***
*** Bug 366518 has been marked as a duplicate of this bug. ***
*** Bug 366585 has been marked as a duplicate of this bug. ***
*** Bug 399635 has been marked as a duplicate of this bug. ***
*** Bug 401268 has been marked as a duplicate of this bug. ***
I believe bug #399635 and bug #401268 are not duplicates of this one. Looking at the backtrace of those bugs and say the 4 preceding duplicates, they look differente. I'm using gnome-terminal-2.17.90 with vte-0.15.2 (which is supposed to be new, shiny and possibly broken from what said the dev on planet.gnome.org)
(In reply to comment #27) > I believe bug #399635 and bug #401268 are not duplicates of this one. Looking > at the backtrace of those bugs and say the 4 preceding duplicates, they look > differente. > > I'm using gnome-terminal-2.17.90 with vte-0.15.2 (which is supposed to be new, > shiny and possibly broken from what said the dev on planet.gnome.org) > The effect and cause is identical - I reintroduced an old bug by not updating the invalidate in unrealize. This is fixed in SVN, see bug 400671 for the recent reoccurence.