summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.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/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.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/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp')
-rw-r--r--lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
index 21cb33402e7..7ebb5fee1ec 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
+++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
@@ -315,12 +315,10 @@ bool ClangExpressionSourceCode::GetText(
}
}
- if (ClangModulesDeclVendor *decl_vendor =
- target->GetClangModulesDeclVendor()) {
- ClangPersistentVariables *persistent_vars =
- llvm::cast<ClangPersistentVariables>(
- target->GetPersistentExpressionStateForLanguage(
- lldb::eLanguageTypeC));
+ ClangModulesDeclVendor *decl_vendor = target->GetClangModulesDeclVendor();
+ auto *persistent_vars = llvm::cast<ClangPersistentVariables>(
+ target->GetPersistentExpressionStateForLanguage(lldb::eLanguageTypeC));
+ if (decl_vendor && persistent_vars) {
const ClangModulesDeclVendor::ModuleVector &hand_imported_modules =
persistent_vars->GetHandLoadedClangModules();
ClangModulesDeclVendor::ModuleVector modules_for_macros;
OpenPOWER on IntegriCloud