diff options
author | David Xu <davidxu@FreeBSD.org> | 2004-11-01 10:49:34 +0000 |
---|---|---|
committer | David Xu <davidxu@FreeBSD.org> | 2004-11-01 10:49:34 +0000 |
commit | 4dd715ced2c947807f69cfdb2dab716bf0731962 (patch) | |
tree | 323e00dfac055efa845a1578c3f7fb540a6c929d /lib/libpthread | |
parent | f790de29b9c3d03ffd2899fa4bbfbf83a51cb54b (diff) | |
download | src-test2-4dd715ced2c947807f69cfdb2dab716bf0731962.tar.gz src-test2-4dd715ced2c947807f69cfdb2dab716bf0731962.zip |
Notes
Diffstat (limited to 'lib/libpthread')
-rw-r--r-- | lib/libpthread/thread/thr_private.h | 1 | ||||
-rw-r--r-- | lib/libpthread/thread/thr_sig.c | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/lib/libpthread/thread/thr_private.h b/lib/libpthread/thread/thr_private.h index b681b3de7be2..b8ccb4378d99 100644 --- a/lib/libpthread/thread/thr_private.h +++ b/lib/libpthread/thread/thr_private.h @@ -563,6 +563,7 @@ typedef void (*thread_continuation_t) (void *); struct pthread_sigframe { int psf_valid; int psf_flags; + int psf_cancelflags; int psf_interrupted; int psf_timeout; int psf_signo; diff --git a/lib/libpthread/thread/thr_sig.c b/lib/libpthread/thread/thr_sig.c index adca51721717..a54663ae3550 100644 --- a/lib/libpthread/thread/thr_sig.c +++ b/lib/libpthread/thread/thr_sig.c @@ -1188,6 +1188,7 @@ thr_sigframe_restore(struct pthread *thread, struct pthread_sigframe *psf) if (psf->psf_valid == 0) PANIC("invalid pthread_sigframe\n"); thread->flags = psf->psf_flags; + thread->cancelflags = psf->psf_cancelflags; thread->interrupted = psf->psf_interrupted; thread->timeout = psf->psf_timeout; thread->state = psf->psf_state; @@ -1200,6 +1201,7 @@ 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_cancelflags = thread->cancelflags; psf->psf_interrupted = thread->interrupted; psf->psf_timeout = thread->timeout; psf->psf_state = thread->state; |