[llvm] [llvm-symbolizer] Recognize AIX big archive (PR #150401)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 8 01:44:40 PDT 2025
================
@@ -716,9 +811,9 @@ LLVMSymbolizer::getOrCreateModuleInfo(StringRef ModuleName) {
createModuleInfo(Objects.first, std::move(Context), ModuleName);
if (ModuleOrErr) {
auto I = Modules.find(ModuleName);
- BinaryForPath.find(BinaryName)->second.pushEvictor([this, I]() {
- Modules.erase(I);
- });
+ auto BinIter = BinaryForPath.find(BinaryName);
+ if (BinIter != BinaryForPath.end())
----------------
midhuncodes7 wrote:
In some iterations the `BinaryForPath.find(BinaryName)` fails and returns `BinaryForPath.end()` but the previous code doesn't check for it, so it ends up calling `pushEvictor` on invalid memory. This results in a crash, hence a check is added.
https://github.com/llvm/llvm-project/pull/150401
More information about the llvm-commits
mailing list