diff options
| author | Benjamin Kramer <benny.kra@googlemail.com> | 2010-04-20 12:16:50 +0000 |
|---|---|---|
| committer | Benjamin Kramer <benny.kra@googlemail.com> | 2010-04-20 12:16:50 +0000 |
| commit | 395857705f3207f08406632169af1b93edee1716 (patch) | |
| tree | 65c721578892a6615701094118b0f3fa96fadaee /llvm/lib/Analysis | |
| parent | 6a2542b6297ddc0c70127d30ff84f6f30e6f9621 (diff) | |
| download | bcm5719-llvm-395857705f3207f08406632169af1b93edee1716.tar.gz bcm5719-llvm-395857705f3207f08406632169af1b93edee1716.zip | |
PR6880: Don't dereference CallsExternalNode if it's NULL.
llvm-svn: 101897
Diffstat (limited to 'llvm/lib/Analysis')
| -rw-r--r-- | llvm/lib/Analysis/IPA/CallGraph.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Analysis/IPA/CallGraph.cpp b/llvm/lib/Analysis/IPA/CallGraph.cpp index c59c31c22a9..62a4c31e3bd 100644 --- a/llvm/lib/Analysis/IPA/CallGraph.cpp +++ b/llvm/lib/Analysis/IPA/CallGraph.cpp @@ -158,9 +158,11 @@ private: // destroy - Release memory for the call graph virtual void destroy() { /// CallsExternalNode is not in the function map, delete it explicitly. - CallsExternalNode->allReferencesDropped(); - delete CallsExternalNode; - CallsExternalNode = 0; + if (CallsExternalNode) { + CallsExternalNode->allReferencesDropped(); + delete CallsExternalNode; + CallsExternalNode = 0; + } CallGraph::destroy(); } }; |

