about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog18
-rw-r--r--mach/lock-intern.h1
-rw-r--r--sysdeps/mach/hurd/sigaction.c2
-rw-r--r--sysdeps/mach/hurd/sigsuspend.c1
-rw-r--r--sysdeps/mach/i386/sysdep.h4
5 files changed, 25 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 838ccf0b29..13f51bddc7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
+
+	* 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.
+
 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
 
 	* nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
diff --git a/mach/lock-intern.h b/mach/lock-intern.h
index d42a378f4d..4aaaedc1c0 100644
--- a/mach/lock-intern.h
+++ b/mach/lock-intern.h
@@ -19,6 +19,7 @@
 #ifndef _LOCK_INTERN_H
 #define	_LOCK_INTERN_H
 
+#include <sys/cdefs.h>
 #include <machine-lock.h>
 
 #ifndef _EXTERN_INLINE
diff --git a/sysdeps/mach/hurd/sigaction.c b/sysdeps/mach/hurd/sigaction.c
index 3dc530955d..1ff94f61f4 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 96b3857c72..75390f7cfa 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 1f138f4759..9da46dbbdc 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)				      \