Compile C with some optimizations
[llpp.git] / misc / cbzl.patch
blobe08a1c2724ceedf79a2f83ac9be2126d07d2cce0
1 diff --git a/source/cbz/mucbz.c b/source/cbz/mucbz.c
2 index 2c7bd11..0302f11 100644
3 --- a/source/cbz/mucbz.c
4 +++ b/source/cbz/mucbz.c
5 @@ -116,8 +116,19 @@ cbz_read_zip_entry(cbz_document *doc, cbz_entry *entry, int *sizep)
7 if (method == 0)
9 - *sizep = entry->usize;
10 - return cdata;
11 + fz_buffer *buf;
12 + fz_stream *stm;
13 + unsigned char *udata;
14 + char *tmp = fz_malloc(ctx, entry->csize + 1);
16 + entry->csize[(char *) memcpy(tmp, cdata, entry->csize)] = 0;
17 + stm = fz_open_file(ctx, tmp);
18 + buf = fz_read_all(stm, 0);
19 + fz_close(stm);
20 + fz_free(ctx, cdata);
21 + fz_free(ctx, tmp);
22 + *sizep = fz_buffer_storage(ctx, buf, &udata);;
23 + return udata;
26 if (method == 8)