Re: guile-gnome-platform: segfault on exit

Andy Wingo <[email protected]> Wed, 11 Jan 2012 22:43:35 +0100
Newsgroups gmane.lisp.guile.gtk
Message-ID <[email protected]>
On Wed 11 Jan 2012 22:15, gregory benison <[email protected]> writes:

>> Do you have more frames here?
>>
>
> I got 'em all (below) and the problem is that 't' here == NULL:
>
> 383	suspend (void)
> 384	{
> 385	  scm_i_thread *t = SCM_I_CURRENT_THREAD;
> 386	

Strange, this is:

#define SCM_I_CURRENT_THREAD \
  ((scm_i_thread *) scm_i_pthread_getspecific (scm_i_thread_key))

and that key is set in guilify_self_1, called from:

> #6  0xb77b93ac in scm_i_init_thread_for_guile (base=0xbfa66df4,
> parent=0xb7440f20) at threads.c:600

It's rather silly that we are guilifying again; presumably the pthread
key was cleared before guile's atexit handler got to run.  I wonder if
that was the proximate cause of this.  What platform are you on?

FWIW, I can't reproduce this on Guile from stable-2.0.

What is the next step here, I wonder?

Andy
-- 
http://wingolog.org/