From 27b13e8592f3b4af9e404c90d756782dfa681fdb Mon Sep 17 00:00:00 2001 From: bdrewery Date: Fri, 22 Jul 2016 00:43:32 +0000 Subject: [PATCH] MFC r302908: Fix dlsym(RTLD_NEXT) handling to only return the next library in last library cases. git-svn-id: svn://svn.freebsd.org/base/stable/10@303169 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- libexec/rtld-elf/rtld.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libexec/rtld-elf/rtld.c b/libexec/rtld-elf/rtld.c index b97a4e683..8d0938b59 100644 --- a/libexec/rtld-elf/rtld.c +++ b/libexec/rtld-elf/rtld.c @@ -3181,7 +3181,7 @@ do_dlsym(void *handle, const char *name, void *retaddr, const Ver_Entry *ve, handle == RTLD_SELF) { /* ... caller included */ if (handle == RTLD_NEXT) obj = globallist_next(obj); - TAILQ_FOREACH_FROM(obj, &obj_list, next) { + for (; obj != NULL; obj = TAILQ_NEXT(obj, next)) { if (obj->marker) continue; res = symlook_obj(&req, obj); -- 2.42.0