diff options
author | Pavel Labath <labath@google.com> | 2015-07-24 09:52:25 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2015-07-24 09:52:25 +0000 |
commit | f8b5874b6383bfb06f4258bc906713c2d507c3d5 (patch) | |
tree | d5f0cc616f1d7c9a9ba753024770844ea51af043 /lldb/source/Core/ValueObjectChild.cpp | |
parent | 47ce74649ff0f7069024e7334b297acef4ec0bf8 (diff) | |
download | bcm5719-llvm-f8b5874b6383bfb06f4258bc906713c2d507c3d5.tar.gz bcm5719-llvm-f8b5874b6383bfb06f4258bc906713c2d507c3d5.zip |
Revert "Fix an issue where LLDB would run out of stack space ..."
This commit introduced an infinite recursion in
ValueObjectChild::CanUpdateWithInvalidExecutionContext (because FollowParentChain also considers
the current object), which broke nearly all the tests. Ignoring the current object removes the
recursion, but two tests still time out (TestDataFormatterLibcxxList.py and
TestValueObjectRecursion.py) for some reason. Reverting for now.
llvm-svn: 243102
Diffstat (limited to 'lldb/source/Core/ValueObjectChild.cpp')
-rw-r--r-- | lldb/source/Core/ValueObjectChild.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/lldb/source/Core/ValueObjectChild.cpp b/lldb/source/Core/ValueObjectChild.cpp index 06c311f22cf..c1e45e1f48d 100644 --- a/lldb/source/Core/ValueObjectChild.cpp +++ b/lldb/source/Core/ValueObjectChild.cpp @@ -109,14 +109,12 @@ ValueObjectChild::GetDisplayTypeName() return display_name; } -LazyBool +bool ValueObjectChild::CanUpdateWithInvalidExecutionContext () { - ValueObject* opinionated_ancestor = FollowParentChain([] (ValueObject* vo) -> bool { - return (vo->CanUpdateWithInvalidExecutionContext() == eLazyBoolCalculate); - }); - - return opinionated_ancestor ? opinionated_ancestor->CanUpdateWithInvalidExecutionContext() : this->ValueObject::CanUpdateWithInvalidExecutionContext(); + if (m_parent) + return m_parent->CanUpdateWithInvalidExecutionContext(); + return this->ValueObject::CanUpdateWithInvalidExecutionContext(); } bool |