about summary refs log tree commit diff
path: root/sysdeps/mach/hurd/i386
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2018-03-18 19:52:39 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2018-03-18 20:38:26 +0100
commitaa2189295e4e531d05733d60bfd697c7a962b100 (patch)
tree0fc848c590995609ae9ebe02b8dc1178a73ba65a /sysdeps/mach/hurd/i386
parent72103e73c9a76784b9e8b27a7d5b802178d6755b (diff)
downloadglibc-aa2189295e4e531d05733d60bfd697c7a962b100.tar.gz
glibc-aa2189295e4e531d05733d60bfd697c7a962b100.tar.xz
glibc-aa2189295e4e531d05733d60bfd697c7a962b100.zip
hurd: Fix boot with statically-linked exec server
	* sysdeps/mach/hurd/i386/init-first.c (init): Also find ELF headers by
	oneself when the pointer given in D is nul (as set by ext2fs).
Diffstat (limited to 'sysdeps/mach/hurd/i386')
-rw-r--r--sysdeps/mach/hurd/i386/init-first.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sysdeps/mach/hurd/i386/init-first.c b/sysdeps/mach/hurd/i386/init-first.c
index f4a4df33de..226de02a99 100644
--- a/sysdeps/mach/hurd/i386/init-first.c
+++ b/sysdeps/mach/hurd/i386/init-first.c
@@ -107,7 +107,7 @@ init1 (int argc, char *arg0, ...)
   /* If we are the bootstrap task started by the kernel,
      then after the environment pointers there is no Hurd
      data block; the argument strings start there.  */
-  if ((void *) d == argv[0])
+  if ((void *) d == argv[0] || d->phdr == NULL)
     {
 #ifndef SHARED
       /* With a new enough linker (binutils-2.23 or better),