Tue Jun 4 18:57:57 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
authorroland <roland>
Tue, 4 Jun 1996 22:59:00 +0000 (22:59 +0000)
committerroland <roland>
Tue, 4 Jun 1996 22:59:00 +0000 (22:59 +0000)
commit335775a464a03ac35edfebe7c8c729058c73d7f1
treef8b219f3c15aa860752f12bca4939526e4439925
parent1b74237fac66611e0e3b25e5aa7bd628efa150e5
Tue Jun  4 18:57:57 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

* elf/dl-deps.c (_dl_map_object_deps): Use a linked list of alloca'd
  elements and then scan it to fill the single malloc'd array, instead
  of using realloc to grow the array in the first pass.  _dl_map_object
may do some mallocs that break our stream of reallocs, and the minimal
realloc can't handle that.
* elf/dl-init.c (_dl_init_next): Take argument, link_map whose
  searchlist describes the piece of the DT_NEEDED graph to be
  initialized.
* elf/link.h: Update prototype.
* sysdeps/i386/dl-machine.h (RTLD_START): Pass _dl_loaded as argument
to _dl_init_next.
* sysdeps/m68k/dl-machine.h: Likewise.
* elf/dl-deps.c (_dl_open): Pass new object as arg to _dl_init_next.
* elf/link.h (struct link_map): Add `l_reserved' member, soaking up
extra bits in last byte.
* elf/dl-deps.c (_dl_map_object_deps): Use that for mark bit to avoid
putting dup elts in search list.
elf/dl-deps.c