[Lldb-commits] [PATCH] D59200: Fix a crasher in StackFrame::GetValueForVariableExpressionPath()

Greg Clayton via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Sun Mar 10 17:37:20 PDT 2019


clayborg created this revision.
clayborg added reviewers: jingham, zturner, aprantl.
Herald added a reviewer: serge-sans-paille.
Herald added a subscriber: jdoerfert.

There was a crash that would happen if an IDE would ask for a child of a shared pointer via any SB API call that ends up calling StackFrame::GetValueForVariableExpressionPath(). The previous code expects an error to be set describing why the synthetic child of a type was not able to be found, but we have some synthetic child providers that weren't setting the error and returning an empty value object shared pointer. This fixes that to ensure we don't lose our debug session by crashing, fully tests GetValueForVariableExpressionPath functionality, and ensures we don't crash on GetValueForVariableExpressionPath() in the future.


https://reviews.llvm.org/D59200

Files:
  packages/Python/lldbsuite/test/functionalities/var_path/Makefile
  packages/Python/lldbsuite/test/functionalities/var_path/TestVarPath.py
  packages/Python/lldbsuite/test/functionalities/var_path/main.cpp
  source/Target/StackFrame.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D59200.190033.patch
Type: text/x-patch
Size: 7579 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20190311/2687c569/attachment-0001.bin>


More information about the lldb-commits mailing list