Refactor BeginQuery validation out of gl::Context.

Part of our effort to relocate all validation logic to a preliminary
pass outside of our state tracking or rendering layers.

BUG=angle:571

Change-Id: I5241daef6249910a781e78fd066debe0ab1d3f2b
Reviewed-on: https://chromium-review.googlesource.com/199348
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
diff --git a/src/libGLESv2/libGLESv2.cpp b/src/libGLESv2/libGLESv2.cpp
index 94df078..855e6b3 100644
--- a/src/libGLESv2/libGLESv2.cpp
+++ b/src/libGLESv2/libGLESv2.cpp
@@ -117,14 +117,9 @@
 
         if (context)
         {
-            if (!ValidQueryType(context, target))
+            if (!ValidateBeginQuery(context, target, id))
             {
-                return gl::error(GL_INVALID_ENUM);
-            }
-
-            if (id == 0)
-            {
-                return gl::error(GL_INVALID_OPERATION);
+                return;
             }
 
             context->beginQuery(target, id);
@@ -6555,14 +6550,9 @@
                 return gl::error(GL_INVALID_OPERATION);
             }
 
-            if (!ValidQueryType(context, target))
+            if (!ValidateBeginQuery(context, target, id))
             {
-                return gl::error(GL_INVALID_ENUM);
-            }
-
-            if (id == 0)
-            {
-                return gl::error(GL_INVALID_OPERATION);
+                return;
             }
 
             context->beginQuery(target, id);