svn commit: trunk/uClibc/ldso/ldso
jocke at uclibc.org
jocke at uclibc.org
Sun Oct 21 15:36:18 UTC 2007
Author: jocke
Date: 2007-10-21 08:36:17 -0700 (Sun, 21 Oct 2007)
New Revision: 20311
Log:
Handle STT_COMMON symbols too. Following binutils release
will set the type of common symbols to STT_COMMON
instead of STT_OBJECTS, so the dynamic linker needs
to handle this type os symbols too.
Same changes have been added to glibc (See: bugzilla #5104).
This patch ensures the uclibc will work with later bintuils.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso at st.com>
Modified:
trunk/uClibc/ldso/ldso/dl-hash.c
Changeset:
Modified: trunk/uClibc/ldso/ldso/dl-hash.c
===================================================================
--- trunk/uClibc/ldso/ldso/dl-hash.c 2007-10-21 12:02:16 UTC (rev 20310)
+++ trunk/uClibc/ldso/ldso/dl-hash.c 2007-10-21 15:36:17 UTC (rev 20311)
@@ -177,7 +177,12 @@
continue;
if (sym->st_value == 0)
continue;
- if (ELF_ST_TYPE(sym->st_info) > STT_FUNC)
+ if (ELF_ST_TYPE(sym->st_info) > STT_FUNC
+ && ELF_ST_TYPE(sym->st_info) != STT_COMMON)
+ /* Ignore all but STT_NOTYPE, STT_OBJECT, STT_FUNC
+ * and STT_COMMON entries since these are no
+ * code/data definitions
+ */
continue;
if (_dl_strcmp(strtab + sym->st_name, name) != 0)
continue;
More information about the uClibc-cvs
mailing list