I believe it's fixed now (with these lines in s_inter.c..
#ifdef THREAD_LOCKING
sys_lock();
#endif
(*sys_fdpoll[i].fdp_fn)(sys_fdpoll[i].fdp_ptr, sys_fdpoll[i].fdp_fd);
#ifdef THREAD_LOCKING
sys_unlock();
#endif
)
However, I doubt anyone has ever completely debugged a program that uses
threads.
cheers
Miller