summaryrefslogtreecommitdiff
path: root/base/gsshade.c
diff options
context:
space:
mode:
authorKen Sharp <ken.sharp@artifex.com>2016-04-28 15:36:07 +0100
committerKen Sharp <ken.sharp@artifex.com>2016-04-28 15:36:07 +0100
commit8b5def7074f49c4a231b5b49046af2a510c0fa37 (patch)
tree497b8735743754fa5ad78a818eefc7c2648e206a /base/gsshade.c
parent60455507951739cc7826c9e0429d1273adf6b87c (diff)
downloadghostpdl-8b5def7074f49c4a231b5b49046af2a510c0fa37.tar.gz
Coverity ID 121453 - reorder code to check pointer before dereferencing
Diffstat (limited to 'base/gsshade.c')
-rw-r--r--base/gsshade.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/base/gsshade.c b/base/gsshade.c
index 7dcc54b5f..309b43e85 100644
--- a/base/gsshade.c
+++ b/base/gsshade.c
@@ -264,14 +264,16 @@ gs_shading_R_init(gs_shading_t ** ppsh,
const gs_shading_R_params_t * params, gs_memory_t * mem)
{
gs_shading_R_t *psh;
- int code = check_CBFD((const gs_shading_params_t *)params,
- params->Function, params->Domain, 1);
+ int code;
- if (code < 0)
- return code;
if (params == NULL || params->Domain[0] == params->Domain[1] ||
params->Coords[2] < 0 || params->Coords[5] < 0)
return_error(gs_error_rangecheck);
+ code = check_CBFD((const gs_shading_params_t *)params,
+ params->Function, params->Domain, 1);
+
+ if (code < 0)
+ return code;
ALLOC_SHADING(&st_shading_R, shading_type_Radial,
shading_R_procs, "gs_shading_R_init");
return 0;