X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/3b6a05fc894d0c1a3d431045ee5a53955ba093a0..e6416905c4afb34e61276cdc07c44813a3ebc5e7:/lunaix-os/kernel/ds/buffer.c diff --git a/lunaix-os/kernel/ds/buffer.c b/lunaix-os/kernel/ds/buffer.c index 0efea6f..7b277c8 100644 --- a/lunaix-os/kernel/ds/buffer.c +++ b/lunaix-os/kernel/ds/buffer.c @@ -6,14 +6,13 @@ vbuf_alloc(struct vecbuf* vec, void* buf, size_t size) { struct vecbuf* vbuf = valloc(sizeof(struct vecbuf)); - *vbuf = - (struct vecbuf){ .buf = { .buffer = buf, .size = size }, .acc_sz = 0 }; + *vbuf = (struct vecbuf){ .buf = { .buffer = buf, .size = size }, + .acc_sz = vbuf_size(vec) + size }; if (vec) { - vbuf->acc_sz = vbuf_size(vec) + size; llist_append(&vec->components, &vbuf->components); } else { - llist_init_head(&vec->components); + llist_init_head(&vbuf->components); } return vbuf;