jgorbe added a comment. Hi! I've just debugged an issue that brought me to this commit. I'll start preparing a patch tomorrow (not sure how to test it yet) but since it's a recent-ish change I figured I'd ping the commit thread to give you a heads up.
`v.GetSummary()` returns a char* that is backed by a member `std::string m_summary_str` in SBValue, and we put the result in a StringRef that just points there. I've found that in some cases the call to `v.GetError()` invalidates the cached summary and causes the `m_summary_str` member to be cleared. So, if we have a summary provider that returns "Summary string", it ends up being displayed as "<NUL byte>ummary string", because clearing `m_summary_str` sets the first byte to 0 but we are still holding on to a StringRef with the old length. Calling `v.GetError()` first seems to avoid the issue. Another option to fix it would be to keep the summary in a local `std::string` instead. Any preference? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D126014/new/ https://reviews.llvm.org/D126014 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits