diff options
author | Sam James <sam@gentoo.org> | 2022-09-21 14:18:08 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2022-10-02 04:31:25 +0100 |
commit | a529111f77ff46f4836fe7312e70953bc16587cf (patch) | |
tree | 9dc3924cb1a6ef3ef853b7bb45f735365e0b4e6d /base/gxcmap.c | |
parent | Import Ghostscript 9.56.1 (diff) | |
download | ghostscript-gpl-patches-a529111f77ff46f4836fe7312e70953bc16587cf.tar.gz ghostscript-gpl-patches-a529111f77ff46f4836fe7312e70953bc16587cf.tar.bz2 ghostscript-gpl-patches-a529111f77ff46f4836fe7312e70953bc16587cf.zip |
Import Ghostscript 10.0ghostscript-10.0ghostscript-10
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'base/gxcmap.c')
-rw-r--r-- | base/gxcmap.c | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/base/gxcmap.c b/base/gxcmap.c index 067d18b7..bdf83cba 100644 --- a/base/gxcmap.c +++ b/base/gxcmap.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2021 Artifex Software, Inc. +/* Copyright (C) 2001-2022 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or @@ -1361,6 +1361,11 @@ cmap_separation_halftoned(frac all, gx_device_color * pdc, for (i = 0; i < pgs->color_component_map.num_colorants; i++) cm_comps[i] = comp_value; } else { + if (pgs->color_component_map.sep_type == SEP_NONE) { + color_set_null(pdc); + return; + } + /* map to the color model */ map_components_to_colorants(&all, &(pgs->color_component_map), cm_comps, pgs->color_component_map.num_colorants); @@ -1427,8 +1432,12 @@ cmap_separation_direct(frac all, gx_device_color * pdc, const gs_gstate * pgs, if (des_profile->data_cs == gsCIELAB || des_profile->islab) { use_rgb2dev_icc = true; } - } - else { + } else { + if (pgs->color_component_map.sep_type == SEP_NONE) { + color_set_null(pdc); + return; + } + /* map to the color model */ map_components_to_colorants(&comp_value, &(pgs->color_component_map), cm_comps, pgs->color_component_map.num_colorants); @@ -1532,6 +1541,11 @@ cmap_devicen_halftoned(const frac * pcc, cmm_dev_profile_t *dev_profile = NULL; cmm_profile_t *des_profile = NULL; + if (pcs->params.device_n.all_none == true) { + color_set_null(pdc); + return; + } + dev_proc(dev, get_profile)(dev, &dev_profile); gsicc_extract_profile(dev->graphics_type_tag, dev_profile, &des_profile, &render_cond); @@ -1579,6 +1593,11 @@ cmap_devicen_direct(const frac * pcc, cmm_dev_profile_t *dev_profile = NULL; cmm_profile_t *des_profile = NULL; + if (pcs->params.device_n.all_none == true) { + color_set_null(pdc); + return; + } + dev_proc(dev, get_profile)(dev, &dev_profile); gsicc_extract_profile(dev->graphics_type_tag, dev_profile, &des_profile, &render_cond); |