summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression/UserExpression.cpp
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2020-01-08 14:18:47 -0800
committerAdrian Prantl <aprantl@apple.com>2020-01-10 08:52:46 -0800
commite9331a56fead1823d528d6412828fb9e16fd62ff (patch)
tree0532d62035494c012cd196e24065418c6eed7c62 /lldb/source/Expression/UserExpression.cpp
parentbdd88b7ed3956534a0a71b1ea2bc88c69d48f9b7 (diff)
downloadbcm5719-llvm-e9331a56fead1823d528d6412828fb9e16fd62ff.tar.gz
bcm5719-llvm-e9331a56fead1823d528d6412828fb9e16fd62ff.zip
Add missing nullptr checks.
GetPersistentExpressionStateForLanguage() can return a nullptr if it cannot construct a typesystem. This patch adds missing nullptr checks at all uses. Inspired by rdar://problem/58317195 Differential Revision: https://reviews.llvm.org/D72413
Diffstat (limited to 'lldb/source/Expression/UserExpression.cpp')
-rw-r--r--lldb/source/Expression/UserExpression.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lldb/source/Expression/UserExpression.cpp b/lldb/source/Expression/UserExpression.cpp
index 271bd9bb57a..3b507da8e4a 100644
--- a/lldb/source/Expression/UserExpression.cpp
+++ b/lldb/source/Expression/UserExpression.cpp
@@ -396,8 +396,9 @@ UserExpression::Execute(DiagnosticManager &diagnostic_manager,
diagnostic_manager, exe_ctx, options, shared_ptr_to_me, result_var);
Target *target = exe_ctx.GetTargetPtr();
if (options.GetResultIsInternal() && result_var && target) {
- target->GetPersistentExpressionStateForLanguage(m_language)
- ->RemovePersistentVariable(result_var);
+ if (auto *persistent_state =
+ target->GetPersistentExpressionStateForLanguage(m_language))
+ persistent_state->RemovePersistentVariable(result_var);
}
return expr_result;
}
OpenPOWER on IntegriCloud