diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2025-07-31 14:15:20 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-07-31 14:15:20 -0700 |
commit | e1d45b1b97c1f18e5a5fb9db8621ae4b34ba0ab1 (patch) | |
tree | e55a7d54b5c8b0f8f085e04c23e79195705a0ad4 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | fe899cedac18cf3fcf70c58084a1940936ab9a95 (diff) | |
download | llvm-e1d45b1b97c1f18e5a5fb9db8621ae4b34ba0ab1.zip llvm-e1d45b1b97c1f18e5a5fb9db8621ae4b34ba0ab1.tar.gz llvm-e1d45b1b97c1f18e5a5fb9db8621ae4b34ba0ab1.tar.bz2 |
[lldb] Fix a use-after-free in SymbolFileCTF (#151586)
This fixes a use-after-free in SymbolFileCTF. Previously, we would
remove the underlying CTF type as soon as we resolved it. However, it's
possible that we're still holding onto the CTF type while we're parsing
a dependent type, like a modifier, resulting in a use-after-free. This
patch addresses the issue by delaying the removal of the CTF type until
the type is fully resolved.
I have a XNU kernel binary that reproduces the issue and confirmed that
this solves the memory issue using ASan. However I haven't been able to
craft types by hand that reproduce this issue for a test case.
rdar://156660866
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions