diff options
Diffstat (limited to 'filter/filer.c')
-rw-r--r-- | filter/filer.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/filter/filer.c b/filter/filer.c index 92237778..a63a7dd2 100644 --- a/filter/filer.c +++ b/filter/filer.c @@ -219,12 +219,16 @@ fz_readfile(fz_buffer **bufp, fz_file *file) if (n < CHUNKSIZE) { - newbuf = fz_realloc(buf, pos); - if (!newbuf) + if (pos > 0) { - fz_free(buf); - return fz_outofmem; + newbuf = fz_realloc(buf, pos); + if (!newbuf) + { + fz_free(buf); + return fz_outofmem; + } } + else newbuf = buf; real = *bufp = fz_malloc(sizeof(fz_buffer)); if (!real) |