Merge pull request #3288 from cesanta/iobuf

fix iobuf shrink to less than current len
This commit is contained in:
Sergio R. Caprile authored and GitHub committed 2025-09-26 14:37:34 -03:00
commit acd65f2340
3 files changed
+4

No files matched your search

+1
View File
@@ -2608,6 +2608,7 @@ int mg_iobuf_resize(struct mg_iobuf *io, size_t new_size) {
mg_free(io->buf);
io->buf = (unsigned char *) p;
io->size = new_size;
io->len = len;
} else {
ok = 0;
MG_ERROR(("%lld->%lld", (uint64_t) io->size, (uint64_t) new_size));
+1
View File
@@ -25,6 +25,7 @@ int mg_iobuf_resize(struct mg_iobuf *io, size_t new_size) {
mg_free(io->buf);
io->buf = (unsigned char *) p;
io->size = new_size;
io->len = len;
} else {
ok = 0;
MG_ERROR(("%lld->%lld", (uint64_t) io->size, (uint64_t) new_size));
+2
View File
@@ -322,6 +322,8 @@ static void test_iobuf(void) {
mg_iobuf_add(&io, io.len, "a", 1);
ASSERT(io.buf != NULL && io.size == 20 && io.len == 11);
ASSERT(memcmp(io.buf, "xhi!123456a", io.len) == 0);
mg_iobuf_resize(&io, 1);
ASSERT(io.buf != NULL && io.size == 10 && io.len == 10);
mg_iobuf_free(&io);
}