Просмотр исходного кода

Pre-asserts to ensure no overflow happens

Dmitry-Me 11 лет назад
Родитель
Сommit
9fae869124
1 измененных файлов с 2 добавлено и 0 удалено
  1. 2 0
      tinyxml2.h

+ 2 - 0
tinyxml2.h

@@ -288,7 +288,9 @@ public:
 
 private:
     void EnsureCapacity( int cap ) {
+        TIXMLASSERT( cap > 0 );
         if ( cap > _allocated ) {
+            TIXMLASSERT( cap <= INT_MAX / 2 );
             int newAllocated = cap * 2;
             T* newMem = new T[newAllocated];
             memcpy( newMem, _mem, sizeof(T)*_size );	// warning: not using constructors, only works for PODs