diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c index 0b3adeab717..6e093308e89 100644 --- a/src/mesa/state_tracker/st_program.c +++ b/src/mesa/state_tracker/st_program.c @@ -2023,7 +2023,7 @@ st_precompile_shader_variant(struct st_context *st, prog->Target == GL_GEOMETRY_PROGRAM_NV) { if (st->lower_point_size && !st->ctx->VertexProgram.PointSizeEnabled) key.export_point_size = is_last_vertex_stage(st->ctx, prog) && - !nir_find_variable_with_location(prog->nir, nir_var_shader_out, VARYING_SLOT_PSIZ); + (!prog->nir || !nir_find_variable_with_location(prog->nir, nir_var_shader_out, VARYING_SLOT_PSIZ)); } key.st = st->has_shareable_shaders ? NULL : st; st_get_common_variant(st, prog, &key);