Jordan, this looks like a good candidate to nominate for inclusion in the 17.3 stable queue.
What do you think? On Tue, 2017-12-12 at 14:20 -0800, Jordan Justen wrote: > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103988 > Signed-off-by: Jordan Justen <[email protected]> > --- > src/mesa/program/ir_to_mesa.cpp | 16 +++++++++------- > 1 file changed, 9 insertions(+), 7 deletions(-) > > diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp > index 5f663b3d09f..051ed2225b7 100644 > --- a/src/mesa/program/ir_to_mesa.cpp > +++ b/src/mesa/program/ir_to_mesa.cpp > @@ -3115,15 +3115,17 @@ _mesa_glsl_link_shader(struct gl_context *ctx, struct > gl_shader_program *prog) > link_shaders(ctx, prog); > } > > - if (prog->data->LinkStatus) { > - /* Reset sampler validated to true, validation happens via the > - * LinkShader call below. > - */ > + /* If LinkStatus is linking_success, then reset sampler validated to true, > + * validation happens via the LinkShader call below. If LinkStatus is > + * linking_skipped, then SamplersValidated will have been restored from > the > + * shader cache. > + */ > + if (prog->data->LinkStatus == linking_success) { > prog->SamplersValidated = GL_TRUE; > + } > > - if (!ctx->Driver.LinkShader(ctx, prog)) { > - prog->data->LinkStatus = linking_failure; > - } > + if (prog->data->LinkStatus && !ctx->Driver.LinkShader(ctx, prog)) { > + prog->data->LinkStatus = linking_failure; > } > > /* Return early if we are loading the shader from on-disk cache */ -- Br, Andres _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
