--- glibc.orig/linuxthreads/sysdeps/unix/sysv/linux/raise.c 2003-01-02 19:38:38.000000000 -0500 +++ glibc/linuxthreads/sysdeps/unix/sysv/linux/raise.c 2005-10-31 14:19:58.000000000 -0500 @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1996, 2002, 2003 Free Software Foundation, Inc. +/* Copyright (C) 1991, 1996, 2002, 2003, 2005 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,10 +18,13 @@ #include #include -#include -#ifndef SHARED +#ifndef IS_IN_rtld +# include + +# ifndef SHARED weak_extern (__pthread_raise) +# endif #endif /* Raise the signal SIG. */ @@ -29,8 +32,12 @@ int raise (sig) int sig; { +#ifdef IS_IN_rtld + return __kill (__getpid (), sig); +#else return __libc_maybe_call2 (pthread_raise, (sig), __kill (__getpid (), sig)); +#endif } libc_hidden_def (raise) weak_alias (raise, gsignal