Browse Source

fix uninitialized variable in dladdr

the affected branch only applies for DSOs that lack standard hash
table and only have the GNU hash table present.
Rich Felker 11 năm trước cách đây
mục cha
commit
7886985e13
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

@@ -1354,7 +1354,7 @@ int __dladdr(void *addr, Dl_info *info)
 		uint32_t *hashval;
 		buckets = p->ghashtab + 4 + (p->ghashtab[2]*sizeof(size_t)/4);
 		sym += p->ghashtab[1];
-		for (i = 0; i < p->ghashtab[0]; i++) {
+		for (i = nsym = 0; i < p->ghashtab[0]; i++) {
 			if (buckets[i] > nsym)
 				nsym = buckets[i];
 		}