diff options
author | Enrico Granata <egranata@apple.com> | 2013-02-19 22:03:00 +0000 |
---|---|---|
committer | Enrico Granata <egranata@apple.com> | 2013-02-19 22:03:00 +0000 |
commit | 4c5b3f7df638654d4e948c0f6914a20ce5d0134c (patch) | |
tree | b72f1e971288ff093b670a2e3be485b5e20223f5 | |
parent | 086f6cde5dc63c2909e7468dc04c59aaa762889d (diff) | |
download | bcm5719-llvm-4c5b3f7df638654d4e948c0f6914a20ce5d0134c.tar.gz bcm5719-llvm-4c5b3f7df638654d4e948c0f6914a20ce5d0134c.zip |
ValueObjectSynthetic could be wrapping a ValueObjectDynamic. In that case, we want to report that the ValueObject is dynamic since synthetic values are supposed to be just their parent with different children
llvm-svn: 175563
-rw-r--r-- | lldb/include/lldb/Core/ValueObjectSyntheticFilter.h | 14 | ||||
-rw-r--r-- | lldb/source/Core/ValueObjectSyntheticFilter.cpp | 6 |
2 files changed, 16 insertions, 4 deletions
diff --git a/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h b/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h index 947f1af230a..296d44b530c 100644 --- a/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h +++ b/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h @@ -83,7 +83,19 @@ public: virtual bool IsDynamic () { - return false; + if (m_parent) + return m_parent->IsDynamic(); + else + return false; + } + + virtual lldb::DynamicValueType + GetDynamicValueType () + { + if (m_parent) + return m_parent->GetDynamicValueType(); + else + return lldb::eNoDynamicValues; } virtual ValueObject * diff --git a/lldb/source/Core/ValueObjectSyntheticFilter.cpp b/lldb/source/Core/ValueObjectSyntheticFilter.cpp index cb3fcfef1b8..c8edffab898 100644 --- a/lldb/source/Core/ValueObjectSyntheticFilter.cpp +++ b/lldb/source/Core/ValueObjectSyntheticFilter.cpp @@ -115,9 +115,9 @@ ValueObjectSynthetic::GetDynamicValue (lldb::DynamicValueType valueType) { if (!m_parent) return lldb::ValueObjectSP(); - if (m_parent->IsDynamic() && m_parent->GetDynamicValueType() == valueType) - return m_parent->GetSP(); - return ValueObject::GetDynamicValue(valueType); + if (IsDynamic() && GetDynamicValueType() == valueType) + return GetSP(); + return m_parent->GetDynamicValue(valueType); } bool |