i965: Don't write a counter snapshot on EndTransformFeedback if paused.
If the transform feedback object is paused, then we've already written an ending counter snapshot. We don't want to write another one. This fixes assertions in GL33-CTS.transform_feedback.api_errors_test, which calls EndTransformfeedback after PauseTransformFeedback. On the next BeginTransformFeedback, we tried to tally up the results, and saw an odd number of snapshots (due to the double-end), and tripped an assertion. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
This commit is contained in:
parent
47fbe178fa
commit
915f7c25fa
|
@ -485,6 +485,7 @@ gen7_end_transform_feedback(struct gl_context *ctx,
|
||||||
(struct brw_transform_feedback_object *) obj;
|
(struct brw_transform_feedback_object *) obj;
|
||||||
|
|
||||||
/* Store the ending value of the SO_NUM_PRIMS_WRITTEN counters. */
|
/* Store the ending value of the SO_NUM_PRIMS_WRITTEN counters. */
|
||||||
|
if (!obj->Paused)
|
||||||
gen7_save_primitives_written_counters(brw, brw_obj);
|
gen7_save_primitives_written_counters(brw, brw_obj);
|
||||||
|
|
||||||
/* EndTransformFeedback() means that we need to update the number of
|
/* EndTransformFeedback() means that we need to update the number of
|
||||||
|
|
Loading…
Reference in New Issue