[all-commits] [llvm/llvm-project] 095c3c: [LLDB] Fix crash in TypeSystemClang::GetIndexofChi...

cmtice via All-commits all-commits at lists.llvm.org
Wed Dec 4 10:49:35 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 095c3c9d6ec349815563d47f951d4590b3d18333
      https://github.com/llvm/llvm-project/commit/095c3c9d6ec349815563d47f951d4590b3d18333
  Author: cmtice <cmtice at google.com>
  Date:   2024-12-04 (Wed, 04 Dec 2024)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    A lldb/test/API/commands/target/anon-struct/Makefile
    A lldb/test/API/commands/target/anon-struct/TestTargetVarAnonStruct.py
    A lldb/test/API/commands/target/anon-struct/main.cpp

  Log Message:
  -----------
  [LLDB] Fix crash in TypeSystemClang::GetIndexofChildMemberWithName. (#117808)

LLDB can crash in TypeSystemClang::GetIndexOfChildMemberWithName, at a
point where it pushes an index onto the child_indexes vector, tries to
call itself recursively, then tries to pop the entry from child_indexes.
The problem is that the recursive call can clear child_indexes, so that
this code ends up trying to pop an already empty vector. This change
saves the old vector before the push, then restores the saved vector
rather than trying to pop.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list