diff options
Diffstat (limited to 'source/Core/ValueObjectChild.cpp')
| -rw-r--r-- | source/Core/ValueObjectChild.cpp | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/source/Core/ValueObjectChild.cpp b/source/Core/ValueObjectChild.cpp index 23add1ccf0e8d..ccf87cd15b241 100644 --- a/source/Core/ValueObjectChild.cpp +++ b/source/Core/ValueObjectChild.cpp @@ -206,8 +206,12 @@ ValueObjectChild::UpdateValue ()              if (m_error.Success())              { -                ExecutionContext exe_ctx (GetExecutionContextRef().Lock()); -                m_error = m_value.GetValueAsData (&exe_ctx, m_data, 0, GetModule().get()); +                const bool thread_and_frame_only_if_stopped = true; +                ExecutionContext exe_ctx (GetExecutionContextRef().Lock(thread_and_frame_only_if_stopped)); +                if (GetClangType().GetTypeInfo() & ClangASTType::eTypeHasValue) +                    m_error = m_value.GetValueAsData (&exe_ctx, m_data, 0, GetModule().get()); +                else +                    m_error.Clear(); // No value so nothing to read...              }          }          else  | 
