浏览代码

fix inadvertent use of uninitialized variable in dladdr

commit c8b49b2fbc7faa8bf065220f11963d76c8a2eb93 introduced code that
checked bestsym to determine whether a matching symbol was found, but
bestsym is uninitialized if not. instead use best, consistent with use
in the rest of the function.

simplified from bug report and patch by Cheng Liu.
Rich Felker 5 年之前
父节点
当前提交
9b83182069
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      ldso/dynlink.c

+ 1 - 1
ldso/dynlink.c

@@ -2217,7 +2217,7 @@ int dladdr(const void *addr_arg, Dl_info *info)
 		}
 		}
 	}
 	}
 
 
-	if (bestsym && besterr > bestsym->st_size-1) {
+	if (best && besterr > bestsym->st_size-1) {
 		best = 0;
 		best = 0;
 		bestsym = 0;
 		bestsym = 0;
 	}
 	}