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 118534 - gnome-terminal crashes when closing many tabs
gnome-terminal crashes when closing many tabs
Status: RESOLVED DUPLICATE of bug 107234
Product: gnome-terminal
Classification: Core
Component: general
2.2.x
Other Linux
: Normal critical
: ---
Assigned To: GNOME Terminal Maintainers
GNOME Terminal Maintainers
Depends on:
Blocks:
 
 
Reported: 2003-07-29 01:03 UTC by ec9098
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: 2.1/2.2



Description ec9098 2003-07-29 01:03:07 UTC
I greate a new gnome-terminal with many tabs (~10)
via a shell script that reads in a list of remote
hosts from a file.  Each tab corresponds with an
ssh session to a given host.  When the process
running on the remote host terminates, the tabs
are supposed to close.

When all the remote processes end at once, many of
the tabs close, but a few of them linger around
until the crash dialog is displayed.  Here is my
shell script that opens the tabs:


#!/bin/sh
 
PROFILE_NAME="blackOnYellow"
TERMINAL_GEOMETRY="105x40"
GTCOMMAND="gnome-terminal --geometry
$TERMINAL_GEOMETRY"
 
SCALE_SERVER="10.131.0.99"
if [ "$1" != "" ]
then
   SCALE_SERVER=$1
fi
 
for SCALE_CLIENT in `cat scale_clients`
do
   #$TODO: allow for comments in scale clients
file, '#'
   GTCOMMAND=$GTCOMMAND"
--tab-with-profile=$PROFILE_NAME"
   GTCOMMAND=$GTCOMMAND" --title=$SCALE_CLIENT"
   GTCOMMAND=$GTCOMMAND" --command \"ssh
$SCALE_CLIENT 'chmod a+x ./*.sh; ./clie
nt_connect.sh"
   GTCOMMAND=$GTCOMMAND" $SCALE_SERVER'\""
done
 
echo "$GTCOMMAND"
echo "$GTCOMMAND" | /bin/sh
Comment 1 John Fleck 2003-07-29 03:32:49 UTC
Thanks for the bug report. Without a stack trace from the crash it's
very hard to determine what caused the crash. Please see
http://bugzilla.gnome.org/getting-traces.cgi for more information
about getting a useful stack trace. We also need to know the version
of gnome-termnal.
Comment 2 Elijah Newren 2003-07-29 17:00:03 UTC
Marking as NEEDINFO, as per John's comments.
Comment 3 ec9098 2003-07-31 20:38:11 UTC
I'm not going to do a stack trace, but this is 100% reproducable so it
should be simple enough for a developer to get what they need.

Gnome terminal 2.2.1, Red Hat linux 9.0
Comment 4 Elijah Newren 2003-07-31 20:42:11 UTC
From email:

  I'm not going to get a stack trace on this any time soon.  Here's
  the best I can do, the rest is up to you, take it or leave it:

  Gnome-terminal (and all child processes) crash hard when every tab
  in a window with many (7+) tabs closes at once.  This is 100%
  repeatable, I can't imagine it would be hard to get your own stack 
  traces/etc on this.  In the original bug report I attached the
  script I was using to cause it.

Several comments:

  1) If it's not so hard to get a stack trace why don't you get one?
  2) Many bugs are specific to a certain version of gnome-terminal or 
     to a specific distro.  Personally, I'm running GNOMEVER 2.3 from
     cvs, so I can't guarantee I would get the same crash.
  3) Many bugs require very certain setups or tweaking to the system
     that aren't at all obvious.  Again, that would make it hard to
     know whether we could reproduce your bug.
  4) If you don't care enough to get a stack trace, why should we?

I'm sorry if that's harsh, but I look through hundreds/thousands of
bugs.  John and Havoc probably look through more.  We don't have time
to try to duplicate every one.  Yes, it may have taken me less time to
try to duplicate than type this up, but then I wouldn't be able to
save this response for other people that have said similar things.  :)
 We can wait patiently for your stack trace, or close this bug out in
a month or two if it doesn't matter to you.
Comment 5 Havoc Pennington 2003-07-31 20:46:41 UTC
I do get this if I just create a bunch of tabs and close the terminal
(no scripts involved):

(gnome-terminal:29389): Gdk-CRITICAL **: file gdkgc.c: line 464
(gdk_gc_get_colormap): assertion `GDK_IS_GC (gc)' failed

Probably with valgrind it would be pretty obvious pretty quickly what's
wrong. Should be the same as this bug, doubtless a memory corruption.

Anyway, it looks reproduceable or not, I'd say we can try fixing it 
up and otherwise close as INVALID/WORKSFORME rather than NEEDINFO.
Comment 6 ec9098 2003-07-31 21:18:53 UTC
Here's a simpler script that crashes gnome-terminal every time.  (No
external data files needed)

#!/bin/sh
 
declare -i c=0
GTCOMMAND="gnome-terminal --geometry 100x30"
 
while [ $c -lt 12 ]
do
   echo $c
   let "c=c+1"
   GTCOMMAND="$GTCOMMAND --tab-with-profile=Default"
   GTCOMMAND="$GTCOMMAND --command \"ls; sleep 4\""
done
echo $GTCOMMAND | /bin/sh
Comment 7 John Fleck 2003-08-01 02:57:35 UTC
I can't duplicate the crash with the most recent script on 2.2.1. I
also can't (if I'm understanding this correctly) duplicate Havoc's crash.

This is why we need to get a stack trace from the original reporter.
With no stack trace, there's no way to tell if Havoc's example above
is triggering the same bug as the original reporter.

Comment 8 ec9098 2003-08-01 17:26:59 UTC
gdb info:

(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
(no debugging symbols found)...(no debugging symbols found)...
** ERROR **: file vte.c: line 6958 (vte_terminal_process_incoming):
assertion failed: (_vte_buffer_length(terminal->pvt->incoming) > 0)
aborting...

Program received signal SIGABRT, Aborted.
[Switching to Thread 1087387360 (LWP 31283)]
0xffffe002 in ?? ()
(gdb) thread apply all bt

Thread 1 (Thread 1087387360 (LWP 31283))

  • #0 ??
  • #1 abort
    from /lib/tls/libc.so.6
  • #2 g_logv
    from /usr/lib/libglib-2.0.so.0
  • #3 g_log
    from /usr/lib/libglib-2.0.so.0
  • #4 vte_terminal_fork_command
    from /usr/lib/libvte.so.4
  • #5 g_main_context_wakeup
    from /usr/lib/libglib-2.0.so.0
  • #6 g_get_current_time
    from /usr/lib/libglib-2.0.so.0
  • #7 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #8 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #9 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #10 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #11 main
  • #12 __libc_start_main
    from /lib/tls/libc.so.6

Comment 9 Elijah Newren 2003-08-01 17:44:55 UTC
Yeah, that stack trace makes it clear that this is a duplicate of the
107234 tracker bug that Nalin marked as fixed as of April 22.  

Havoc: Looks like you get a different crash--are you using a newer
version of gnome-terminal that perhaps has a different bug?

*** This bug has been marked as a duplicate of 107234 ***
Comment 10 Havoc Pennington 2003-08-01 18:52:28 UTC
I have some random snapshot of gnome-terminal/vte, so my bug 
may be gone in latest. I'll file it separately later if
it keeps happening.
Comment 11 Elijah Newren 2003-08-05 17:48:08 UTC
I just ran back across this bug and re-read my comments from July 31.
 I feel I was definitely too harsh.  I'm sorry, ec9098@go.com--please
don't let this mistake by a volunteer stop you from filing future bugs
to help make Gnome better.  Thank you for taking the time to submit
this bug report and follow up on it.