From: Ulrich Drepper Date: Tue, 26 Oct 2010 17:01:46 +0000 (-0400) Subject: Fix assertion in ld.so, introduced by delayed adding to global list. X-Git-Tag: glibc-2.13~61 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fa41c84d73be804639ecb2250f0b793b1a6f765e;p=thirdparty%2Fglibc.git Fix assertion in ld.so, introduced by delayed adding to global list. --- diff --git a/ChangeLog b/ChangeLog index d867f13a869..58ec05e0cdc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2010-10-26 Ulrich Drepper + + * elf/rtld.c (dl_main): Move assertion after the point where rtld map + is added to the list. + 2010-10-20 Andreas Krebbel Ulrich Drepper diff --git a/elf/rtld.c b/elf/rtld.c index 23b34624905..d53730fe308 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -1108,7 +1108,6 @@ of this helper program; chances are you did not intend to run this program.\n\ main_map = _dl_new_object ((char *) "", "", lt_executable, NULL, __RTLD_OPENEXEC, LM_ID_BASE); assert (main_map != NULL); - assert (main_map == GL(dl_ns)[LM_ID_BASE]._ns_loaded); main_map->l_phdr = phdr; main_map->l_phnum = phnum; main_map->l_entry = *user_entry; @@ -1116,6 +1115,7 @@ of this helper program; chances are you did not intend to run this program.\n\ /* Even though the link map is not yet fully initialized we can add it to the map list since there are no possible users running yet. */ _dl_add_to_namespace_list (main_map, LM_ID_BASE); + assert (main_map == GL(dl_ns)[LM_ID_BASE]._ns_loaded); /* At this point we are in a bit of trouble. We would have to fill in the values for l_dev and l_ino. But in general we