diff options
-rw-r--r-- | sysdeps/generic/raise.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/sysdeps/generic/raise.c b/sysdeps/generic/raise.c index 15348ce..3c497da 100644 --- a/sysdeps/generic/raise.c +++ b/sysdeps/generic/raise.c @@ -19,6 +19,8 @@ <http://www.gnu.org/licenses/>. */ #include <pthread.h> +#include <signal.h> +#include <unistd.h> #pragma weak pthread_kill #pragma weak pthread_self @@ -29,17 +31,18 @@ raise (int signo) "the effect of the raise() function shall be equivalent to calling: pthread_kill(pthread_self(), sig);" */ - int err; if (pthread_kill) - err = pthread_kill (pthread_self (), signo); - else - err = __kill (__getpid (), signo); - if (err) { - errno = err; - return -1; + int err; + err = pthread_kill (pthread_self (), signo); + if (err) + { + errno = err; + return -1; + } + return 0; } - - return 0; + else + return __kill (__getpid (), signo); } |