diff options
Diffstat (limited to 'elf')
-rw-r--r-- | elf/dl-close.c | 2 | ||||
-rw-r--r-- | elf/dl-load.c | 2 | ||||
-rw-r--r-- | elf/rtld.c | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/elf/dl-close.c b/elf/dl-close.c index 4f015fd6df..c823b17642 100644 --- a/elf/dl-close.c +++ b/elf/dl-close.c @@ -237,7 +237,7 @@ _dl_close (void *_map) struct link_map *rl = depmap->l_initfini[k]; if (rl->l_idx < nopencount - & list[rl->l_idx] == rl) + && list[rl->l_idx] == rl) { assert (new_opencount[rl->l_idx] > 0); if (--new_opencount[rl->l_idx] == 0) diff --git a/elf/dl-load.c b/elf/dl-load.c index 83d46f04ee..27f6e3f641 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -909,7 +909,9 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp, l = _dl_new_object (realname, name, l_type, loader, mode, nsid); if (__builtin_expect (l == NULL, 0)) { +#ifdef SHARED fail_new: +#endif errstring = N_("cannot create shared object descriptor"); goto call_lose_errno; } diff --git a/elf/rtld.c b/elf/rtld.c index 3346abf6ce..06dd099cf5 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -537,7 +537,7 @@ _dl_start (void *arg) # define ELF_MACHINE_START_ADDRESS(map, start) (start) #endif - return ELF_MACHINE_START_ADDRESS (GL(dl_loaded), entry); + return ELF_MACHINE_START_ADDRESS (GL(dl_ns)[LM_ID_BASE]._ns_loaded, entry); } } |