Validate transform feedback conflicts on zero draw.

This conflict should be validated even if the draw call would result in
no work being done on the GPU.

Bug: angleproject:2747
Change-Id: I6b32a07ff8a8598dd865270a3a935060f050a68f
Reviewed-on: https://chromium-review.googlesource.com/1162507
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
diff --git a/src/libANGLE/validationES.cpp b/src/libANGLE/validationES.cpp
index d05cb75..70f2031 100644
--- a/src/libANGLE/validationES.cpp
+++ b/src/libANGLE/validationES.cpp
@@ -2726,6 +2726,12 @@
             {
                 return {GL_INVALID_OPERATION, kErrorDrawBufferTypeMismatch};
             }
+
+            const VertexArray *vao = context->getGLState().getVertexArray();
+            if (vao->hasTransformFeedbackBindingConflict(context))
+            {
+                return {GL_INVALID_OPERATION, kErrorVertexBufferBoundForTransformFeedback};
+            }
         }
     }
 
@@ -2801,17 +2807,6 @@
                 return false;
             }
         }
-
-        if (extensions.webglCompatibility && count > 0)
-        {
-            const VertexArray *vao = context->getGLState().getVertexArray();
-            if (vao->hasTransformFeedbackBindingConflict(context))
-            {
-                ANGLE_VALIDATION_ERR(context, InvalidOperation(),
-                                     VertexBufferBoundForTransformFeedback);
-                return false;
-            }
-        }
     }
 
     return true;