Module: Mesa
Branch: master
Commit: 0941ef3dd57e692ee1a897ed83bd887d0cebdc63
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0941ef3dd57e692ee1a897ed83bd887d0cebdc63

Author: Ilia Mirkin <[email protected]>
Date:   Sun Mar  6 12:36:19 2016 -0500

mesa: flip current tf object back to default if current is being deleted

In the rather unusual case of Bind + Delete, we need to make sure that
we unbind the current tf object.

Fixes dEQP-GLES3.functional.lifetime.delete_bound.transform_feedback

Signed-off-by: Ilia Mirkin <[email protected]>
Reviewed-by: Matt Turner <[email protected]>

---

 src/mesa/main/transformfeedback.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/mesa/main/transformfeedback.c 
b/src/mesa/main/transformfeedback.c
index 976b268..f73a89f 100644
--- a/src/mesa/main/transformfeedback.c
+++ b/src/mesa/main/transformfeedback.c
@@ -1136,6 +1136,11 @@ _mesa_DeleteTransformFeedbacks(GLsizei n, const GLuint 
*names)
             }
             _mesa_HashRemove(ctx->TransformFeedback.Objects, names[i]);
             /* unref, but object may not be deleted until later */
+            if (obj == ctx->TransformFeedback.CurrentObject) {
+               reference_transform_feedback_object(
+                     &ctx->TransformFeedback.CurrentObject,
+                     ctx->TransformFeedback.DefaultObject);
+            }
             reference_transform_feedback_object(&obj, NULL);
          }
       }

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to