Merge pull request #261 from Arkshine/feature/datapack-memory

Improve DataPack memory allocation
This commit is contained in:
Vincent Herbet 2015-07-14 00:40:15 +02:00
commit b8dd9d19dd

View File

@ -29,7 +29,7 @@
#include "CDataPack.h" #include "CDataPack.h"
#define DATAPACK_INITIAL_SIZE 512 #define DATAPACK_INITIAL_SIZE 64
CDataPack::CDataPack() CDataPack::CDataPack()
{ {
@ -60,9 +60,10 @@ void CDataPack::CheckSize(size_t typesize)
do do
{ {
m_capacity *= 2; m_capacity *= 2;
m_pBase = (char *)realloc(m_pBase, m_capacity); } while (pos + typesize > m_capacity);
m_curptr = m_pBase + pos;
} while (m_curptr - m_pBase + typesize > m_capacity); m_pBase = (char *)realloc(m_pBase, m_capacity);
m_curptr = m_pBase + pos;
} }
void CDataPack::ResetSize() void CDataPack::ResetSize()