glsl: Bail on parsing if the #version directive is bogus.
If we didn't successfully parse the #version line, there's no point in continuing with parsing and compiling: it's already failed. Furthermore, it can actually be harmful: right after handling #version, we call _mesa_glsl_initialize_types(), which checks state->es_shader and language_version. If it isn't valid, it hits an assertion failure. Fixes Piglit's "invalid-version-es." When processing "#version 110 es", our code set state->es_shader and state->language_version = 110. It then properly determined that this was invalid and flagged an error. Since we continued anyway, we hit the assertion mentioned above. NOTE: This is a candidate for the 9.1 branch. Reviewed-by:Matt Turner <mattst88@gmail.com> Signed-off-by:
Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit f730b1f7)
Loading
Please register or sign in to comment