Procházet zdrojové kódy

byte_zero the allocated io_batch in iob_new

master
Felix von Leitner před 15 roky
rodič
revize
2cd700a10a
2 změnil soubory, kde provedl 6 přidání a 6 odebrání
  1. +2
    -2
      io/iob_new.c
  2. +4
    -4
      t.c

+ 2
- 2
io/iob_new.c Zobrazit soubor

@@ -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;
}

+ 4
- 4
t.c Zobrazit soubor

@@ -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;


Načítá se…
Zrušit
Uložit