summaryrefslogtreecommitdiff
path: root/source/pdf/pdf-page.c
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2017-06-29 12:24:00 +0100
committerRobin Watts <robin.watts@artifex.com>2017-07-04 11:01:00 +0100
commitb9076389f1ede0479d7e48676c60f4c0cc0d6c9a (patch)
tree6d32e662dcfc681d2bd9b091b99ee317d417e96f /source/pdf/pdf-page.c
parentc87bc4ed995b8dcf50277169fbd00cf6e0a640c8 (diff)
downloadmupdf-b9076389f1ede0479d7e48676c60f4c0cc0d6c9a.tar.xz
Remove is_static from fz_new{,_icc}_colorspace.
No longer required, and causes leaks. Also, fix some reference counting problems with colorspaces.
Diffstat (limited to 'source/pdf/pdf-page.c')
-rw-r--r--source/pdf/pdf-page.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/source/pdf/pdf-page.c b/source/pdf/pdf-page.c
index f243bdcd..0a7f968e 100644
--- a/source/pdf/pdf-page.c
+++ b/source/pdf/pdf-page.c
@@ -700,7 +700,11 @@ pdf_load_default_colorspaces(fz_context *ctx, pdf_document *doc, pdf_page *page)
{
cs_obj = pdf_dict_get(ctx, obj, PDF_NAME_DefaultGray);
if (cs_obj)
- fz_set_default_gray(ctx, default_cs, pdf_load_colorspace(ctx, cs_obj));
+ {
+ fz_colorspace *cs = pdf_load_colorspace(ctx, cs_obj);
+ fz_set_default_gray(ctx, default_cs, cs);
+ fz_drop_colorspace(ctx, cs);
+ }
}
fz_catch(ctx)
{}
@@ -709,7 +713,11 @@ pdf_load_default_colorspaces(fz_context *ctx, pdf_document *doc, pdf_page *page)
{
cs_obj = pdf_dict_get(ctx, obj, PDF_NAME_DefaultRGB);
if (cs_obj)
- fz_set_default_rgb(ctx, default_cs, pdf_load_colorspace(ctx, cs_obj));
+ {
+ fz_colorspace *cs = pdf_load_colorspace(ctx, cs_obj);
+ fz_set_default_rgb(ctx, default_cs, cs);
+ fz_drop_colorspace(ctx, cs);
+ }
}
fz_catch(ctx)
{}
@@ -718,7 +726,11 @@ pdf_load_default_colorspaces(fz_context *ctx, pdf_document *doc, pdf_page *page)
{
cs_obj = pdf_dict_get(ctx, obj, PDF_NAME_DefaultCMYK);
if (cs_obj)
- fz_set_default_cmyk(ctx, default_cs, pdf_load_colorspace(ctx, cs_obj));
+ {
+ fz_colorspace *cs = pdf_load_colorspace(ctx, cs_obj);
+ fz_set_default_cmyk(ctx, default_cs, cs);
+ fz_drop_colorspace(ctx, cs);
+ }
}
fz_catch(ctx)
{}