You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
libowfat/io/iob_addbuf_internal.c

22 lines
439 B
C

#include <stdlib.h>
#include "iob_internal.h"
int iob_addbuf_internal(io_batch* b,const void* buf,uint64 n,
void (*cleanup)(struct iob_entry* x)) {
iob_entry* e;
if (!n) {
return 1;
}
e=array_allocate(&b->b,sizeof(iob_entry),array_length(&b->b,sizeof(iob_entry)));
if (!e) return 0;
e->type=FROMBUF;
e->fd=-1;
e->buf=buf;
e->n=n;
e->offset=0;
e->cleanup=cleanup;
b->bytesleft+=n;
++b->bufs;
return 1;
}