summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libc/sysdeps/linux/sh/__longjmp.S5
-rw-r--r--libc/sysdeps/linux/sh/longjmp.c4
2 files changed, 3 insertions, 6 deletions
diff --git a/libc/sysdeps/linux/sh/__longjmp.S b/libc/sysdeps/linux/sh/__longjmp.S
index a3151239e..eb569917b 100644
--- a/libc/sysdeps/linux/sh/__longjmp.S
+++ b/libc/sysdeps/linux/sh/__longjmp.S
@@ -63,8 +63,3 @@ __longjmp:
#endif
.size __longjmp,.-__longjmp
libc_hidden_def(__longjmp)
-
-/* sigprocmask is not defined here, why the weak then ?*/
-/* it should rather be libc_hidden_def(sigprocmask) if needed */
-.weak __sigprocmask
-__sigprocmask = sigprocmask
diff --git a/libc/sysdeps/linux/sh/longjmp.c b/libc/sysdeps/linux/sh/longjmp.c
index 7c729564a..b1fa7c213 100644
--- a/libc/sysdeps/linux/sh/longjmp.c
+++ b/libc/sysdeps/linux/sh/longjmp.c
@@ -24,6 +24,8 @@
#include <setjmp.h>
#include <signal.h>
+libc_hidden_proto(sigprocmask)
+
extern int __longjmp(char *env, int val);
libc_hidden_proto(__longjmp)
@@ -34,7 +36,7 @@ void __libc_siglongjmp (sigjmp_buf env, int val)
{
if (env[0].__mask_was_saved)
/* Restore the saved signal mask. */
- (void) __sigprocmask (SIG_SETMASK, &env[0].__saved_mask,
+ (void) sigprocmask (SIG_SETMASK, &env[0].__saved_mask,
(sigset_t *) NULL);
/* Call the machine-dependent function to restore machine state. */