From de45ddc6552a7cd73b4918b4fdc9f2d093bdc63a Mon Sep 17 00:00:00 2001 From: Mark Johannes Date: Thu, 15 Aug 1996 16:29:00 +0000 Subject: pthread_kill: fixed the move of SIG_IGN not SA_SIGINFO --- cpukit/posix/src/psignal.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'cpukit') diff --git a/cpukit/posix/src/psignal.c b/cpukit/posix/src/psignal.c index 8ccc89b6fa..66cca49c3c 100644 --- a/cpukit/posix/src/psignal.c +++ b/cpukit/posix/src/psignal.c @@ -1247,8 +1247,8 @@ int pthread_kill( if ( sig && !is_valid_signo(sig) ) set_errno_and_return_minus_one( EINVAL ); - if ( _POSIX_signals_Vectors[ sig ].sa_handler == SIG_IGN ) - return 0; + if ( _POSIX_signals_Vectors[ sig ].sa_flags == SA_SIGINFO ) + set_errno_and_return_minus_one( ENOSYS ); /* * RTEMS does not support sending a siginfo signal to a specific thread. @@ -1268,8 +1268,10 @@ int pthread_kill( if ( sig ) { - if ( _POSIX_signals_Vectors[ sig ].sa_flags == SA_SIGINFO ) - set_errno_and_return_minus_one( ENOSYS ); + if ( _POSIX_signals_Vectors[ sig ].sa_handler == SIG_IGN ) { + _Thread_Enable_dispatch(); + return 0; + } /* XXX critical section */ -- cgit v1.2.3