From ff02973645a9aff2caf1bcd3032f119995e0d63f Mon Sep 17 00:00:00 2001 From: Robin Watts Date: Wed, 3 Jun 2020 18:32:56 +0100 Subject: Fix coverity 359151. Check ds->dev is non NULL before dereferencing it. --- base/gxdownscale.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'base/gxdownscale.c') diff --git a/base/gxdownscale.c b/base/gxdownscale.c index af8e064af..867365b0a 100644 --- a/base/gxdownscale.c +++ b/base/gxdownscale.c @@ -2761,11 +2761,17 @@ gx_downscaler_init_trapped_cm_halftone(gx_downscaler_t *ds, void gx_downscaler_fin(gx_downscaler_t *ds) { int plane; + + if (ds->dev == NULL) + return; + for (plane=0; plane < GS_CLIENT_COLOR_MAX_COMPONENTS; plane++) { gs_free_object(ds->dev->memory, ds->pre_cm[plane], "gx_downscaler(planar_data)"); gs_free_object(ds->dev->memory, ds->post_cm[plane], "gx_downscaler(planar_data)"); + ds->pre_cm[plane] = NULL; + ds->post_cm[plane] = NULL; } ds->num_planes = 0; @@ -2781,9 +2787,11 @@ void gx_downscaler_fin(gx_downscaler_t *ds) if (ds->liner) ds->liner->drop(ds->liner, ds->dev->memory); + ds->liner = NULL; if (ds->ets_config) ets_destroy(ds->dev->memory, ds->ets_config); + ds->ets_config = NULL; } /* Chunky case */ -- cgit v1.2.1