summaryrefslogtreecommitdiff
path: root/base/gsstate.c
diff options
context:
space:
mode:
authorMichael Vrhel <michael.vrhel@artifex.com>2018-12-14 13:04:04 -0800
committerMichael Vrhel <michael.vrhel@artifex.com>2018-12-14 15:22:41 -0800
commit6bcf3eb2fd2bca68eef17a8cfcbf272e22d647d1 (patch)
tree0af5646d4f9a9d96806c5a764a4179c452511f18 /base/gsstate.c
parent7a9359b06801cea8a7a3c4469c1e7f31564a962c (diff)
downloadghostpdl-6bcf3eb2fd2bca68eef17a8cfcbf272e22d647d1.tar.gz
Bug 698721 Overprint mode getting used during shading pattern
Diffstat (limited to 'base/gsstate.c')
-rw-r--r--base/gsstate.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/base/gsstate.c b/base/gsstate.c
index 6eaf369c9..f3fc16eed 100644
--- a/base/gsstate.c
+++ b/base/gsstate.c
@@ -633,7 +633,14 @@ gs_do_set_overprint(gs_gstate * pgs)
if (cs_num_components(pcs) < 0 && pcc->pattern != 0)
code = pcc->pattern->type->procs.set_color(pcc, pgs);
else
+ {
+ /* The spaces that do not allow opm (e.g. ones that are not ICC or DeviceCMYK)
+ will blow away any true setting later. But we have to be prepared
+ in case this is an CMYK ICC space for example. Hence we set effective mode
+ to mode here (Bug 698721)*/
+ pgs->effective_overprint_mode = pgs->overprint_mode;
pcs->type->set_overprint(pcs, pgs);
+ }
return code;
}