size_t nBytes = std::min(size, mSize - mW);
if (!mBuffer || nBytes < size)
{
- int numPages = 1 + size / PAGE_SIZE;
- int newSize = mSize + numPages * PAGE_SIZE;
+ int nPages = 1 + size / PAGE_SIZE;
+ int newSize = mSize + nPages * PAGE_SIZE;
char* newBuffer = (char*)realloc(mBuffer, newSize);
if (newBuffer)
{
mBuffer = newBuffer;
mSize = newSize;
+ nBytes = size;
}
+ if (!mBuffer) return 0;
}
memcpy(&mBuffer[mW], bytes, nBytes);
mW += nBytes;