diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-06-10 13:44:06 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-06-10 13:44:06 +0000 |
commit | 7ab83427af0f77b59941ceba41d509d7d097b065 (patch) | |
tree | cc41c05b1db454e3d802f34df75e636ee922ad87 /include/llvm/DebugInfo/PDB/PDBSymbol.h | |
parent | d288ef4c1788d3a951a7558c68312c2d320612b1 (diff) |
Diffstat (limited to 'include/llvm/DebugInfo/PDB/PDBSymbol.h')
-rw-r--r-- | include/llvm/DebugInfo/PDB/PDBSymbol.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/llvm/DebugInfo/PDB/PDBSymbol.h b/include/llvm/DebugInfo/PDB/PDBSymbol.h index b114b7afb0b0..9e883d2f99a7 100644 --- a/include/llvm/DebugInfo/PDB/PDBSymbol.h +++ b/include/llvm/DebugInfo/PDB/PDBSymbol.h @@ -89,6 +89,8 @@ public: template <typename T> std::unique_ptr<T> findOneChild() const { auto Enumerator(findAllChildren<T>()); + if (!Enumerator) + return nullptr; return Enumerator->getNext(); } @@ -97,6 +99,8 @@ public: template <typename T> std::unique_ptr<ConcreteSymbolEnumerator<T>> findAllChildren() const { auto BaseIter = RawSymbol->findChildren(T::Tag); + if (!BaseIter) + return nullptr; return llvm::make_unique<ConcreteSymbolEnumerator<T>>(std::move(BaseIter)); } std::unique_ptr<IPDBEnumSymbols> findAllChildren(PDB_SymType Type) const; |