summaryrefslogtreecommitdiff
path: root/include/llvm/ADT/SparseBitVector.h
diff options
context:
space:
mode:
authorDaniel Berlin <dberlin@dberlin.org>2007-10-04 05:29:36 +0000
committerDaniel Berlin <dberlin@dberlin.org>2007-10-04 05:29:36 +0000
commit8d69b5a1137debfe11e9073c4edb99d477387072 (patch)
tree9521201226cc0840eda3aaa0808d94ef395d7dbc /include/llvm/ADT/SparseBitVector.h
parentc3a32d190c458fa14c4a6333c942e0aefd56da7e (diff)
downloadllvm-8d69b5a1137debfe11e9073c4edb99d477387072.tar.gz
llvm-8d69b5a1137debfe11e9073c4edb99d477387072.tar.bz2
llvm-8d69b5a1137debfe11e9073c4edb99d477387072.tar.xz
It helps a lot when you check for the end of your list before randomly
dereferencing things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42605 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/ADT/SparseBitVector.h')
-rw-r--r--include/llvm/ADT/SparseBitVector.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/llvm/ADT/SparseBitVector.h b/include/llvm/ADT/SparseBitVector.h
index d1e9125068..b02eb3e480 100644
--- a/include/llvm/ADT/SparseBitVector.h
+++ b/include/llvm/ADT/SparseBitVector.h
@@ -538,7 +538,8 @@ public:
// We may have hit the beginning of our SparseBitVector, in which case,
// we may need to insert right after this element, which requires moving
// the current iterator forward one, because insert does insert before.
- if (ElementIter->index() < ElementIndex)
+ if (ElementIter != Elements.end() &&
+ ElementIter->index() < ElementIndex)
ElementIter = Elements.insert(++ElementIter, Element);
else
ElementIter = Elements.insert(ElementIter, Element);