Closed
Description
unsigned char String::changeBuffer(unsigned int maxStrLen)
{
size_t newSize = (maxStrLen + 16) & (~0xf);
char *newbuffer = (char *) malloc(newSize);
if(newbuffer) {
memset(newbuffer, 0, newSize);
memcpy(newbuffer, buffer, len);
if (buffer) {
free(buffer);
}
capacity = newSize - 1;
buffer = newbuffer;
return 1;
}
buffer = newbuffer;
return 0;
}
I think on allocation failure nothing should happen and 0 should be returned.
Metadata
Metadata
Assignees
Labels
No labels