Browse Source

remove redundant code in do_dlsym function

commit 637dd2d383cc1f63bf02a732f03786857b22c7bd introduced the checks
for RTLD_DEFAULT and RTLD_NEXT here, claiming they fixed a regression,
but the above conditional block clearly already covered these cases,
and removing the checks produces no difference in the generated code.
Rich Felker 10 năm trước cách đây
mục cha
commit
97b72d22ad
1 tập tin đã thay đổi với 1 bổ sung1 xóa
  1. 1 1
      src/ldso/dynlink.c

+ 1 - 1
src/ldso/dynlink.c

@@ -1500,7 +1500,7 @@ static void *do_dlsym(struct dso *p, const char *s, void *ra)
 			return __tls_get_addr((size_t []){def.dso->tls_id, def.sym->st_value});
 		return def.dso->base + def.sym->st_value;
 	}
-	if (p != RTLD_DEFAULT && p != RTLD_NEXT && invalid_dso_handle(p))
+	if (invalid_dso_handle(p))
 		return 0;
 	if (p->ghashtab) {
 		gh = gnu_hash(s);