aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/mach
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2007-07-22 06:52:07 +0000
committerRoland McGrath <roland@gnu.org>2007-07-22 06:52:07 +0000
commit610903b0cc2166874b60dbd15be9c7e03a1bdb90 (patch)
treeda9fddc68dd205075581180393dd839c0ab78b81 /sysdeps/mach
parent7b153ce13a6e91bc0ca787fc9d3345456ec09803 (diff)
downloadglibc-610903b0cc2166874b60dbd15be9c7e03a1bdb90.zip
glibc-610903b0cc2166874b60dbd15be9c7e03a1bdb90.tar.gz
glibc-610903b0cc2166874b60dbd15be9c7e03a1bdb90.tar.bz2
* mach/lock-intern.h: Include <sys/cdefs.h>.
* sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before reading A. * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias to __sigsuspend. * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>. 2006-06-13 Thomas Schwinge <tschwinge@gnu.org> * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to `__ASSEMBLER__'. * sysdeps/mach/hurd/i386/tls.h: Likewise.
Diffstat (limited to 'sysdeps/mach')
-rw-r--r--sysdeps/mach/hurd/sigaction.c2
-rw-r--r--sysdeps/mach/hurd/sigsuspend.c1
-rw-r--r--sysdeps/mach/i386/sysdep.h4
3 files changed, 6 insertions, 1 deletions
diff --git a/sysdeps/mach/hurd/sigaction.c b/sysdeps/mach/hurd/sigaction.c
index 3dc5309..1ff94f6 100644
--- a/sysdeps/mach/hurd/sigaction.c
+++ b/sysdeps/mach/hurd/sigaction.c
@@ -68,7 +68,7 @@ __sigaction (sig, act, oact)
__spin_lock (&ss->lock);
pending = ss->pending & ~ss->blocked;
}
- else if (a.sa_handler == SIG_IGN || a.sa_handler == SIG_DFL)
+ else if (act != NULL && (a.sa_handler == SIG_IGN || a.sa_handler == SIG_DFL))
/* We are changing to an action that might be to ignore SIG signals.
If SIG is blocked and pending and the new action is to ignore it, we
must remove it from the pending set now; if the action is changed
diff --git a/sysdeps/mach/hurd/sigsuspend.c b/sysdeps/mach/hurd/sigsuspend.c
index 96b3857..75390f7 100644
--- a/sysdeps/mach/hurd/sigsuspend.c
+++ b/sysdeps/mach/hurd/sigsuspend.c
@@ -80,4 +80,5 @@ __sigsuspend (set)
return -1;
}
libc_hidden_def (__sigsuspend)
+strong_alias (__sigsuspend, sigsuspend_not_cancel)
weak_alias (__sigsuspend, sigsuspend)
diff --git a/sysdeps/mach/i386/sysdep.h b/sysdeps/mach/i386/sysdep.h
index 1f138f4..9da46db 100644
--- a/sysdeps/mach/i386/sysdep.h
+++ b/sysdeps/mach/i386/sysdep.h
@@ -16,6 +16,10 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+/* Defines RTLD_PRIVATE_ERRNO and USE_DL_SYSINFO. */
+#include <dl-sysdep.h>
+#include <tls.h>
+
#define LOSE asm volatile ("hlt")
#define SNARF_ARGS(entry_sp, argc, argv, envp) \