summaryrefslogtreecommitdiff
path: root/source/fitz/load-tiff.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/fitz/load-tiff.c')
-rw-r--r--source/fitz/load-tiff.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/source/fitz/load-tiff.c b/source/fitz/load-tiff.c
index 80abd6f1..2da9e635 100644
--- a/source/fitz/load-tiff.c
+++ b/source/fitz/load-tiff.c
@@ -1374,6 +1374,7 @@ fz_load_tiff_subimage(fz_context *ctx, const unsigned char *buf, size_t len, int
fz_always(ctx)
{
/* Clean up scratch memory */
+ fz_drop_colorspace(ctx, tiff.colorspace);
fz_free(ctx, tiff.colormap);
fz_free(ctx, tiff.stripoffsets);
fz_free(ctx, tiff.stripbytecounts);
@@ -1420,14 +1421,18 @@ fz_load_tiff_info_subimage(fz_context *ctx, const unsigned char *buf, size_t len
fz_drop_colorspace(ctx, tiff.colorspace);
tiff.colorspace = fz_keep_colorspace(ctx, fz_device_rgb(ctx));
}
- *cspacep = tiff.colorspace;
+ *cspacep = fz_keep_colorspace(ctx, tiff.colorspace);
}
fz_always(ctx)
{
/* Clean up scratch memory */
+ fz_drop_colorspace(ctx, tiff.colorspace);
fz_free(ctx, tiff.colormap);
fz_free(ctx, tiff.stripoffsets);
fz_free(ctx, tiff.stripbytecounts);
+ fz_free(ctx, tiff.tileoffsets);
+ fz_free(ctx, tiff.tilebytecounts);
+ fz_free(ctx, tiff.data);
fz_free(ctx, tiff.samples);
fz_free(ctx, tiff.profile);
}