X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=blobdiff_plain;f=lib%2Fbitio.c;h=bf210009aae531da8a818c75872334646954228f;hp=17d92939f6badf583053ac0b4f3d27658be01ad0;hb=86683e9e9c61cb3f0164a1ffcf151ccefa8871df;hpb=5c7bc47d1c32e31480960d7a1ab5419628b505ff diff --git a/lib/bitio.c b/lib/bitio.c index 17d9293..bf21000 100644 --- a/lib/bitio.c +++ b/lib/bitio.c @@ -136,6 +136,28 @@ void reader_init_memreader(reader_t*r, void*newdata, int newlength) r->pos = 0; } +/* ---------------------------- zzip reader ------------------------------ */ +#ifdef HAVE_ZZIP +static int reader_zzip_read(reader_t*reader, void* data, int len) +{ + return zzip_file_read((ZZIP_FILE*)reader->internal, data, len); +} +static void reader_zzip_dealloc(reader_t*reader) +{ + memset(reader, 0, sizeof(reader_t)); +} +void reader_init_zzipreader(reader_t*r,ZZIP_FILE*z) +{ + r->read = reader_zzip_read; + r->dealloc = reader_zzip_dealloc; + r->internal = z; + r->type = READER_TYPE_ZZIP; + r->mybyte = 0; + r->bitpos = 8; + r->pos = 0; +} +#endif + /* ---------------------------- mem writer ------------------------------- */ typedef struct _memwrite