diff options
author | Sean Callanan <scallanan@apple.com> | 2012-03-10 03:03:46 +0000 |
---|---|---|
committer | Sean Callanan <scallanan@apple.com> | 2012-03-10 03:03:46 +0000 |
commit | b7de9601583525186c629d24bfc39e6fc5adc148 (patch) | |
tree | 459fc76da957fec20b761fe07101ecbe5429960e | |
parent | 1e5ec2fcb462f51efeb5c42ccde768bc6a063aa5 (diff) | |
download | bcm5719-llvm-b7de9601583525186c629d24bfc39e6fc5adc148.tar.gz bcm5719-llvm-b7de9601583525186c629d24bfc39e6fc5adc148.zip |
Hardened the process of reading the program counter
on behalf of a DWARF expression.
llvm-svn: 152477
-rw-r--r-- | lldb/source/Expression/DWARFExpression.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lldb/source/Expression/DWARFExpression.cpp b/lldb/source/Expression/DWARFExpression.cpp index 88ce130a3c3..1ff6e8e138b 100644 --- a/lldb/source/Expression/DWARFExpression.cpp +++ b/lldb/source/Expression/DWARFExpression.cpp @@ -1219,7 +1219,12 @@ DWARFExpression::Evaluate else { frame = exe_ctx->GetFramePtr(); - pc = frame->GetRegisterContext()->GetPC(); + if (!frame) + return false; + RegisterContextSP reg_ctx_sp = frame->GetRegisterContext(); + if (!reg_ctx_sp) + return false; + pc = reg_ctx_sp->GetPC(); } if (loclist_base_load_addr != LLDB_INVALID_ADDRESS) |