* threads.c (do_thread_exit, scm_cancel_thread,
authorNeil Jerram <neil@ossau.uklinux.net>
Thu, 7 Feb 2008 01:24:31 +0000 (01:24 +0000)
committerNeil Jerram <neil@ossau.uklinux.net>
Thu, 7 Feb 2008 01:24:31 +0000 (01:24 +0000)
commit86a597f8b38ecc9de563977aa150ddff3771cadc
treef9bf7c8dc3fb7559f26c6221f448620b8e3934e3
parent0ea659f3ba4067425c4779da03e2e76e9b0651ca
* threads.c (do_thread_exit, scm_cancel_thread,
scm_set_thread_cleanup_x, scm_thread_cleanup): Lock on thread-specific
admin mutex instead of `thread_admin_mutex'.
* threads.h (scm_i_thread)[admin_mutex]: New field.
* throw.c (make_jmpbuf): Don't enter critical section during thread
spawn -- there is a possibility of deadlock if other threads are
exiting.
NEWS
libguile/ChangeLog
libguile/threads.c
libguile/threads.h
libguile/throw.c