diff --git a/src/values/Buffer.cpp b/src/values/Buffer.cpp index 1df5f79..b6ad905 100644 --- a/src/values/Buffer.cpp +++ b/src/values/Buffer.cpp @@ -41,7 +41,7 @@ bool Buffer::resize(size_t new_size) uint32_t Buffer::add_end(uint8_t *data, size_t data_size) { if (taken + data_size > size) - if (!resize(size + data_size)) + if (!resize((size + data_size) * 2)) return -1; memcpy(buffer + taken, data, data_size); @@ -52,7 +52,7 @@ uint32_t Buffer::add_end(uint8_t *data, size_t data_size) int Buffer::add_middle(uint8_t *data, size_t data_size, size_t index) { if (taken + data_size > size) - if (!resize(size + data_size)) + if (!resize((size + data_size) * 2)) return -1; memmove(buffer + index + data_size, buffer + index, taken - index); memcpy(buffer + index, data, data_size);