Made the expression parser handle persistent variables
correctly even after the process has quit.
git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@142712 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Expression/ClangExpressionDeclMap.cpp b/source/Expression/ClangExpressionDeclMap.cpp
index aa7adfa..bc10ecc 100644
--- a/source/Expression/ClangExpressionDeclMap.cpp
+++ b/source/Expression/ClangExpressionDeclMap.cpp
@@ -972,9 +972,11 @@
{
if ((persistent_var_sp->m_flags & ClangExpressionVariable::EVIsProgramReference ||
persistent_var_sp->m_flags & ClangExpressionVariable::EVIsLLDBAllocated) &&
- persistent_var_sp->m_live_sp)
+ persistent_var_sp->m_live_sp &&
+ m_parser_vars->m_exe_ctx->GetProcessSP() &&
+ m_parser_vars->m_exe_ctx->GetProcessSP()->IsAlive())
{
- return persistent_var_sp->m_live_sp->GetValue();
+ return persistent_var_sp->m_live_sp->GetValue();
}
else
{