summaryrefslogtreecommitdiff
path: root/base/gxblend1.c
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2017-10-03 16:50:56 +0100
committerRobin Watts <robin.watts@artifex.com>2017-10-03 16:50:56 +0100
commit4a7815f3b929a05ec8b5aaac965d62d5d370dcbe (patch)
treeaf216a8c7021aa7edf20f5328cebd42bc8d5abd3 /base/gxblend1.c
parent71e8599455a7befc7a14f6cd1353c9231fb93d48 (diff)
downloadghostpdl-4a7815f3b929a05ec8b5aaac965d62d5d370dcbe.tar.gz
Fix incorrect group alpha calculation.
In pdf14_compose_group, in the tos_isolated case, for simple blends, we call art_pdf_composite_group_8 to apply blend_mode to both process and spots. A side effect of this call is to update the contents of nos_alpha_g_ptr. In more complex blends, we split the process and spots into 2 different calls to the same function. The current code however passes nos_alpha_g_ptr to both however, resulting in it being updated twice. Fixed here by making one of them take NULL.
Diffstat (limited to 'base/gxblend1.c')
-rw-r--r--base/gxblend1.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/base/gxblend1.c b/base/gxblend1.c
index b720a755a..931d298f1 100644
--- a/base/gxblend1.c
+++ b/base/gxblend1.c
@@ -549,7 +549,7 @@ pdf14_compose_group(pdf14_buf *tos, pdf14_buf *nos, pdf14_buf *maskbuf,
tos_pixel[n_chan - num_spots] = tos_pixel[n_chan];
/* Blend process with blend mode */
- art_pdf_composite_group_8(nos_pixel, nos_alpha_g_ptr, tos_pixel,
+ art_pdf_composite_group_8(nos_pixel, NULL, tos_pixel,
n_chan - num_spots, pix_alpha, blend_mode,
pblend_procs, pdev);