From 59e923e5a1fecfb17fc3dc0f912baa9cede2c2ca Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 16 Jul 2021 16:59:37 -0400 Subject: [PATCH] lavapipe: don't read line stipple info in pipeline creation if stipple is disabled otherwise these values may be (harmlessly) garbage Reviewed-by: Dave Airlie Part-of: --- src/gallium/frontends/lavapipe/lvp_pipeline.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/gallium/frontends/lavapipe/lvp_pipeline.c b/src/gallium/frontends/lavapipe/lvp_pipeline.c index 11747abd982..0c1c30315c6 100644 --- a/src/gallium/frontends/lavapipe/lvp_pipeline.c +++ b/src/gallium/frontends/lavapipe/lvp_pipeline.c @@ -816,9 +816,14 @@ lvp_graphics_pipeline_init(struct lvp_pipeline *pipeline, pipeline->disable_multisample = line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT || line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT; pipeline->line_rectangular = line_state->lineRasterizationMode != VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT; - if (!dynamic_state_contains(pipeline->graphics_create_info.pDynamicState, VK_DYNAMIC_STATE_LINE_STIPPLE_EXT)) { - pipeline->line_stipple_factor = line_state->lineStippleFactor - 1; - pipeline->line_stipple_pattern = line_state->lineStipplePattern; + if (pipeline->line_stipple_enable) { + if (!dynamic_state_contains(pipeline->graphics_create_info.pDynamicState, VK_DYNAMIC_STATE_LINE_STIPPLE_EXT)) { + pipeline->line_stipple_factor = line_state->lineStippleFactor - 1; + pipeline->line_stipple_pattern = line_state->lineStipplePattern; + } else { + pipeline->line_stipple_factor = 0; + pipeline->line_stipple_pattern = UINT16_MAX; + } } } else pipeline->line_rectangular = true;