summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2012-06-01 20:32:35 +0000
committerGreg Clayton <gclayton@apple.com>2012-06-01 20:32:35 +0000
commite5476db2d8627a82b9af6fc2f153a3f130f0e770 (patch)
treed483a2c6c830cbfa0a56a3169d01dcabcc755d00
parent8ebb9a85649126664e1d477475290a67a39a4fb2 (diff)
downloadbcm5719-llvm-e5476db2d8627a82b9af6fc2f153a3f130f0e770.tar.gz
bcm5719-llvm-e5476db2d8627a82b9af6fc2f153a3f130f0e770.zip
<rdar://problem/11548378>
Fixed an issue with the current type being set to DIE_IS_BEING_PARSED in the m_die_to_type map by making sure the type pointer is valid. llvm-svn: 157836
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
index b936f61ccc4..eb9917b8d8c 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
@@ -5922,7 +5922,7 @@ SymbolFileDWARF::ParseType (const SymbolContext& sc, DWARFCompileUnit* dwarf_cu,
decl_ctx_die))
{
type_ptr = m_die_to_type[die];
- if (type_ptr)
+ if (type_ptr && type_ptr != DIE_IS_BEING_PARSED)
{
type_sp = type_ptr->shared_from_this();
break;
@@ -6047,7 +6047,7 @@ SymbolFileDWARF::ParseType (const SymbolContext& sc, DWARFCompileUnit* dwarf_cu,
// The type for this DIE should have been filled in the function call above
type_ptr = m_die_to_type[die];
- if (type_ptr)
+ if (type_ptr && type_ptr != DIE_IS_BEING_PARSED)
{
type_sp = type_ptr->shared_from_this();
break;
OpenPOWER on IntegriCloud