OSDN Git Service

Do string comparisos as late as possible during symbol lookup.
authorMike Frysinger <vapier@gentoo.org>
Mon, 8 Oct 2007 02:03:48 +0000 (02:03 -0000)
committerMike Frysinger <vapier@gentoo.org>
Mon, 8 Oct 2007 02:03:48 +0000 (02:03 -0000)
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
ldso/ldso/dl-hash.c

index 2043c25..c19afb4 100644 (file)
@@ -175,12 +175,12 @@ char *_dl_find_hash(const char *name, struct dyn_elf *rpnt, struct elf_resolve *
 
                        if (type_class & (sym->st_shndx == SHN_UNDEF))
                                continue;
-                       if (_dl_strcmp(strtab + sym->st_name, name) != 0)
-                               continue;
                        if (sym->st_value == 0)
                                continue;
                        if (ELF_ST_TYPE(sym->st_info) > STT_FUNC)
                                continue;
+                       if (_dl_strcmp(strtab + sym->st_name, name) != 0)
+                               continue;
 
                        switch (ELF_ST_BIND(sym->st_info)) {
                        case STB_WEAK: