From a7be7ebe808a1aba2ce9e5b6441fcdaa65419419 Mon Sep 17 00:00:00 2001 From: smatz Date: Fri, 25 Dec 2009 23:10:20 +0000 Subject: (svn r18633) -Codechange: fortify SmallVector a bit more --- src/core/smallvec_type.hpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/core/smallvec_type.hpp b/src/core/smallvec_type.hpp index 82ade860c..38fa6fe6e 100644 --- a/src/core/smallvec_type.hpp +++ b/src/core/smallvec_type.hpp @@ -54,7 +54,7 @@ public: /** * Remove all items from the list and free allocated memory. */ - void Reset() + FORCEINLINE void Reset() { this->items = 0; this->capacity = 0; @@ -76,6 +76,7 @@ public: /** * Append an item and return it. + * @return pointer to newly allocated item */ FORCEINLINE T *Append() { @@ -144,7 +145,8 @@ public: return this->Find(item) != this->End(); } - /** Removes given item from this map + /** + * Removes given item from this vector * @param item item to remove * @note it has to be pointer to item in this map. It is overwritten by the last item. */ @@ -223,6 +225,7 @@ public: */ FORCEINLINE const T *Get(uint index) const { + assert(index < this->items); return &this->data[index]; } @@ -234,6 +237,7 @@ public: */ FORCEINLINE T *Get(uint index) { + assert(index < this->items); return &this->data[index]; } @@ -245,6 +249,7 @@ public: */ FORCEINLINE const T &operator[](uint index) const { + assert(index < this->items); return this->data[index]; } @@ -256,6 +261,7 @@ public: */ FORCEINLINE T &operator[](uint index) { + assert(index < this->items); return this->data[index]; } }; -- cgit v1.2.3-70-g09d2