From: Mark Janes Date: Fri, 13 May 2016 20:04:56 +0000 (-0700) Subject: i965: check tcs for NULL dereference X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fd854c1add853eb3363d735da2faca9c9c092e4c;p=mesa.git i965: check tcs for NULL dereference Coverity issue 1361544 found an instance where the tcs variable is checked for NULL, but unconditionally dereferenced later in the same function. Reviewed-by: Kenneth Graunke --- diff --git a/src/mesa/drivers/dri/i965/brw_tcs.c b/src/mesa/drivers/dri/i965/brw_tcs.c index e8178c6daab..9589fa5edeb 100644 --- a/src/mesa/drivers/dri/i965/brw_tcs.c +++ b/src/mesa/drivers/dri/i965/brw_tcs.c @@ -278,14 +278,16 @@ brw_codegen_tcs_prog(struct brw_context *brw, if (unlikely(brw->perf_debug)) { struct brw_shader *btcs = (struct brw_shader *) tcs; - if (btcs->compiled_once) { - brw_tcs_debug_recompile(brw, shader_prog, key); + if (btcs) { + if (btcs->compiled_once) { + brw_tcs_debug_recompile(brw, shader_prog, key); + } + btcs->compiled_once = true; } if (start_busy && !drm_intel_bo_busy(brw->batch.last_bo)) { perf_debug("TCS compile took %.03f ms and stalled the GPU\n", (get_time() - start_time) * 1000); } - btcs->compiled_once = true; } /* Scratch space is used for register spilling */