summaryrefslogtreecommitdiffstats
path: root/lib/libpthread/thread/thr_kern.c
diff options
context:
space:
mode:
authordavidxu <davidxu@FreeBSD.org>2003-06-30 06:16:50 +0000
committerdavidxu <davidxu@FreeBSD.org>2003-06-30 06:16:50 +0000
commit67068d48167e3506e10a16d9e61d6362db843c40 (patch)
tree8e286fb7c1767e570cc48127627a5390c1162482 /lib/libpthread/thread/thr_kern.c
parentcfd592ad57fd4c3adbcdfbe51b5994322683ce9c (diff)
downloadFreeBSD-src-67068d48167e3506e10a16d9e61d6362db843c40.zip
FreeBSD-src-67068d48167e3506e10a16d9e61d6362db843c40.tar.gz
Because there are only _SIG_MAXSIG elements in thread siginfo array,
use [signal number - 1] as subscript to access the array.
Diffstat (limited to 'lib/libpthread/thread/thr_kern.c')
-rw-r--r--lib/libpthread/thread/thr_kern.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libpthread/thread/thr_kern.c b/lib/libpthread/thread/thr_kern.c
index b0cbac7..f7575ad 100644
--- a/lib/libpthread/thread/thr_kern.c
+++ b/lib/libpthread/thread/thr_kern.c
@@ -1597,7 +1597,7 @@ kse_switchout_thread(struct kse *kse, struct pthread *thread)
if (SIGISMEMBER(thread->sigmask, i))
continue;
if (SIGISMEMBER(thread->sigpend, i))
- _thr_sig_add(thread, i, &thread->siginfo[i]);
+ _thr_sig_add(thread, i, &thread->siginfo[i-1]);
else if (SIGISMEMBER(_thr_proc_sigpending, i) &&
_thr_getprocsig_unlocked(i, &siginfo)) {
_thr_sig_add(thread, i, &siginfo);
OpenPOWER on IntegriCloud