[Lldb-commits] [lldb] r219889 - Guard against NULL derefs.

Jason Molenda jmolenda at apple.com
Wed Oct 15 18:40:17 PDT 2014


Author: jmolenda
Date: Wed Oct 15 20:40:16 2014
New Revision: 219889

URL: http://llvm.org/viewvc/llvm-project?rev=219889&view=rev
Log:
Guard against NULL derefs.
clang static analyzer fixits.

Modified:
    lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp

Modified: lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp?rev=219889&r1=219888&r2=219889&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp (original)
+++ lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp Wed Oct 15 20:40:16 2014
@@ -2990,7 +2990,7 @@ SymbolFileDWARF::ResolveSymbolContext(co
 
                                                     if (block_die != NULL)
                                                         sc.block = block.FindBlockByID (MakeUserID(block_die->GetOffset()));
-                                                    else
+                                                    else if (function_die != NULL)
                                                         sc.block = block.FindBlockByID (MakeUserID(function_die->GetOffset()));
                                                 }
                                             }
@@ -3402,7 +3402,7 @@ SymbolFileDWARF::ResolveFunction (DWARFC
                 break;
         }
     }
-    assert (die->Tag() == DW_TAG_subprogram);
+    assert (die && die->Tag() == DW_TAG_subprogram);
     if (GetFunction (cu, die, sc))
     {
         Address addr;
@@ -7114,7 +7114,7 @@ SymbolFileDWARF::ParseType (const Symbol
                 {
                     symbol_context_scope = sc.comp_unit;
                 }
-                else if (sc.function != NULL)
+                else if (sc.function != NULL && sc_parent_die)
                 {
                     symbol_context_scope = sc.function->GetBlock(true).FindBlockByID(MakeUserID(sc_parent_die->GetOffset()));
                     if (symbol_context_scope == NULL)





More information about the lldb-commits mailing list