Added proper transform feedback checks to glDrawRangeElements

It is illegal to start a new draw operation while a transform
feedback is active.

Change-Id: I5ebb01889ce5154162a51f5e6cfbc8431554c879
Reviewed-on: https://swiftshader-review.googlesource.com/3549
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libGLESv2/libGLESv3.cpp b/src/OpenGL/libGLESv2/libGLESv3.cpp
index 6091210..ef9eeff 100644
--- a/src/OpenGL/libGLESv2/libGLESv3.cpp
+++ b/src/OpenGL/libGLESv2/libGLESv3.cpp
@@ -549,6 +549,12 @@
 

 	if(context)

 	{

+		es2::TransformFeedback* transformFeedback = context->getTransformFeedback();

+		if(transformFeedback && transformFeedback->isActive() && !transformFeedback->isPaused())

+		{

+			return error(GL_INVALID_OPERATION);

+		}

+

 		context->drawElements(mode, start, end, count, type, indices);

 	}

 }