@ -1,9 +1,11 @@
#include <stdlib.h>
#include "byte.h"
#include "iob_internal.h"
io_batch* iob_new(int hint_entries) {
io_batch* b=(io_batch*)malloc(sizeof(io_batch));
if (!b) return 0;
byte_zero(b,sizeof(io_batch));
if (hint_entries) {
if (!array_allocate(&b->b,sizeof(iob_entry),hint_entries)) {
free(b);
@ -11,7 +13,5 @@ io_batch* iob_new(int hint_entries) {
}
array_trunc(&b->b);
b->next=b->bufs=b->files=0;
b->bytesleft=0;
return b;
@ -37,11 +37,11 @@ int64 writecb(int64 fd,const void* buf,uint64 n) {
int main(int argc,char* argv[]) {
static io_batch b;
io_batch* b=iob_new(1234);
int64 fd=open("t.c",0);
iob_addbuf(&b,"fnord",5);
iob_addfile_close(&b,fd,0,7365);
iob_write(1,&b,writecb);
iob_addbuf(b,"fnord",5);
iob_addfile_close(b,fd,0,7365);
iob_write(1,b,writecb);
#if 0
char dest[1024];
unsigned long len;