Explorar o código

More overflow checks

Dmitry-Me %!s(int64=11) %!d(string=hai) anos
pai
achega
74fb870c36
Modificáronse 1 ficheiros con 4 adicións e 0 borrados
  1. 4 0
      tinyxml2.h

+ 4 - 0
tinyxml2.h

@@ -232,11 +232,14 @@ public:
     }
 
     void Push( T t ) {
+        TIXMLASSERT( _size < (size_t)(-1) );
         EnsureCapacity( _size+1 );
         _mem[_size++] = t;
     }
 
     T* PushArr( int count ) {
+        TIXMLASSERT( count >= 0 );
+        TIXMLASSERT( _size <= (size_t)(-1) - count );
         EnsureCapacity( _size+count );
         T* ret = &_mem[_size];
         _size += count;
@@ -244,6 +247,7 @@ public:
     }
 
     T Pop() {
+        TIXMLASSERT( _size > 0 );
         return _mem[--_size];
     }