summaryrefslogtreecommitdiff
path: root/filter/filer.c
diff options
context:
space:
mode:
Diffstat (limited to 'filter/filer.c')
-rw-r--r--filter/filer.c12
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)