Add early out validation in drawArraysCommon

Bug: angleproject:6791
Change-Id: I60de6806dae9c917c6db24a18f586e3b0aa2154e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3331414
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
diff --git a/src/libANGLE/validationES.h b/src/libANGLE/validationES.h
index 86a82b1..32bcd73 100644
--- a/src/libANGLE/validationES.h
+++ b/src/libANGLE/validationES.h
@@ -1007,6 +1007,17 @@
         return ValidateDrawBase(context, entryPoint, mode);
     }
 
+    if (primcount <= 0)
+    {
+        if (primcount < 0)
+        {
+            context->validationError(entryPoint, GL_INVALID_VALUE, err::kNegativeCount);
+            return false;
+        }
+        // Early exit.
+        return ValidateDrawBase(context, entryPoint, mode);
+    }
+
     if (!ValidateDrawBase(context, entryPoint, mode))
     {
         return false;