diff options
Diffstat (limited to 'base/gxidata.c')
-rw-r--r-- | base/gxidata.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/base/gxidata.c b/base/gxidata.c index 857d314d..8ce26a07 100644 --- a/base/gxidata.c +++ b/base/gxidata.c @@ -1,4 +1,4 @@ -/* Copyright (C) 2001-2020 Artifex Software, Inc. +/* Copyright (C) 2001-2021 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or @@ -208,7 +208,7 @@ gx_image1_plane_data(gx_image_enum_common_t * info, dmprintf1(dev->memory, "[b]image1 y=%d\n", y); if (gs_debug_c('B')) { int i, n = width_spp; - byte *buftemp = (buffer == NULL) ? penum->buffer : buffer; + byte *buftemp = (buffer == NULL) ? penum->buffer : (byte *)buffer; if (penum->bps > 8) n *= 2; @@ -521,6 +521,11 @@ gx_image1_end_image(gx_image_enum_common_t * info, bool draw_last) if (penum->clues != NULL) { gs_free_object(mem,penum->clues, "image clues"); } + + /* decrement this ref that was incremented in gx_image_enum_begin() */ + rc_decrement_only(penum->pcs, "pcs"); + penum->pcs = NULL; + gs_free_object(mem, penum->line, "image line"); gs_free_object(mem, penum->buffer, "image buffer"); |