Save THR_FLAGS_IN_TDLIST in signal frame, otherwise if a thread received

a signal will can not be removed from thread list after it exited.

Reviewed by: deischen
Approved by: re (jhb)
This commit is contained in:
David Xu 2003-05-30 14:50:16 +00:00
parent b2b8c0dde1
commit 9abece6475
2 changed files with 4 additions and 2 deletions

View File

@ -893,7 +893,8 @@ static void
thr_sigframe_save(struct pthread *thread, struct pthread_sigframe *psf)
{
/* This has to initialize all members of the sigframe. */
psf->psf_flags = thread->flags & THR_FLAGS_PRIVATE;
psf->psf_flags =
thread->flags & (THR_FLAGS_PRIVATE|THR_FLAGS_IN_TDLIST);
psf->psf_interrupted = thread->interrupted;
psf->psf_signo = thread->signo;
psf->psf_state = thread->state;

View File

@ -893,7 +893,8 @@ static void
thr_sigframe_save(struct pthread *thread, struct pthread_sigframe *psf)
{
/* This has to initialize all members of the sigframe. */
psf->psf_flags = thread->flags & THR_FLAGS_PRIVATE;
psf->psf_flags =
thread->flags & (THR_FLAGS_PRIVATE|THR_FLAGS_IN_TDLIST);
psf->psf_interrupted = thread->interrupted;
psf->psf_signo = thread->signo;
psf->psf_state = thread->state;