Files
llvm-project/lldb/source/Target/StackFrameList.cpp
Alexandre Perez 16f793876e [lldb] Fix synthetic frame identity loss during incremental fetches (#191903)
When `SyntheticStackFrameList::FetchFramesUpTo` is called incrementally,
PC-less synthetic frames can end up with identical `StackID` values.
This happens because `num_synthetic_frames` is reset to zero on each
call, handing out duplicate call frame addresses. Since PC-less frames
all share `LLDB_INVALID_ADDRESS` as their PC, the `StackID` equality
check cannot distinguish them, and `ExecutionContextRef` resolves the
wrong frame.

The fix counts existing synthetic frames in `m_frames` before starting
the fetch loop so new frames receive unique call frame addresses.
2026-04-14 06:42:44 -07:00

38 KiB