mesa: Flush vertices before changing the OpenGL state.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
CC: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3958>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3958>
(cherry picked from commit 636656bcd7)
This commit is contained in:
Mathias Fröhlich 2020-02-26 07:49:27 +01:00 committed by Dylan Baker
parent f1ec137ec9
commit 69edb32eaa
2 changed files with 11 additions and 5 deletions

View file

@ -1075,7 +1075,7 @@
"description": "mesa: Flush vertices before changing the OpenGL state.",
"nominated": true,
"nomination_type": 0,
"resolution": 0,
"resolution": 1,
"master_sha": null,
"because_sha": null
},

View file

@ -59,6 +59,11 @@ conservative_raster_parameter(GLenum pname, GLfloat param,
_mesa_error(ctx, GL_INVALID_VALUE, "%s(param=%g)", func, param);
return;
}
FLUSH_VERTICES(ctx, 0);
ctx->NewDriverState |=
ctx->DriverFlags.NewNvConservativeRasterizationParams;
ctx->ConservativeRasterDilate =
CLAMP(param,
ctx->Const.ConservativeRasterDilateRange[0],
@ -74,6 +79,11 @@ conservative_raster_parameter(GLenum pname, GLfloat param,
"%s(pname=%s)", func, _mesa_enum_to_string(param));
return;
}
FLUSH_VERTICES(ctx, 0);
ctx->NewDriverState |=
ctx->DriverFlags.NewNvConservativeRasterizationParams;
ctx->ConservativeRasterMode = param;
break;
default:
@ -81,10 +91,6 @@ conservative_raster_parameter(GLenum pname, GLfloat param,
break;
}
FLUSH_VERTICES(ctx, 0);
ctx->NewDriverState |=
ctx->DriverFlags.NewNvConservativeRasterizationParams;
return;
invalid_pname_enum:
if (!no_error)