X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/acf88ae62167d8d4b832b867ba24341ef8467ab9..befe9ee1cad9ca11cea394e6a9f3d3598d76fc31:/src/common/dynarray.cpp diff --git a/src/common/dynarray.cpp b/src/common/dynarray.cpp index 25a7b4a31d..1b3a0353b9 100644 --- a/src/common/dynarray.cpp +++ b/src/common/dynarray.cpp @@ -112,11 +112,14 @@ void name::Grow(size_t nIncrement) \ /* only do it if no more place */ \ if( m_nCount == m_nSize ) { \ if( m_nSize == 0 ) { \ - /* was empty, alloc some memory */ \ - m_pItems = new T[WX_ARRAY_DEFAULT_INITIAL_SIZE]; \ + /* was empty, determine initial size */ \ + size_t size = WX_ARRAY_DEFAULT_INITIAL_SIZE; \ + if (size < nIncrement) size = nIncrement; \ + /* allocate some memory */ \ + m_pItems = new T[size]; \ /* only grow if allocation succeeded */ \ if ( m_pItems ) { \ - m_nSize = WX_ARRAY_DEFAULT_INITIAL_SIZE; \ + m_nSize = size; \ } \ } \ else \