Fixed BindRenderbuffer

BindRenderbuffer doesn't require anything except a non-zero
renderbuffer to create a new Renderbuffer object (it is not
required to use GenRenderbuffers before using BindRenderbuffer).
This had been fixed for GLES 3.0, but the same also applies
to GLES 2.0, which has been fixed here. Note that the Context
already handles the case where renderbuffer is zero properly.

Bug 25983901

Change-Id: I75f706fc56df28871bf60b5645f1c0db039fccb8
Reviewed-on: https://swiftshader-review.googlesource.com/4334
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libGLESv2/libGLESv2.cpp b/src/OpenGL/libGLESv2/libGLESv2.cpp
index f62bdd6..ba400ce 100644
--- a/src/OpenGL/libGLESv2/libGLESv2.cpp
+++ b/src/OpenGL/libGLESv2/libGLESv2.cpp
@@ -509,17 +509,10 @@
 

 	if(context)

 	{

+		// [OpenGL ES 2.0.25] Section 4.4.3 page 110

 		// [OpenGL ES 3.0.4] Section 4.4.2 page 204

 		// If renderbuffer is not zero, then the resulting renderbuffer object

 		// is a new state vector, initialized with a zero-sized memory buffer.

-		if(renderbuffer != 0 && !context->getRenderbuffer(renderbuffer) && (context->getClientVersion() < 3))

-		{

-			// [OpenGL ES 2.0.25] Section 4.4.3 page 112

-			// 'renderbuffer' must be either zero or the name of an existing renderbuffer object of

-			// type 'renderbuffertarget', otherwise an INVALID_OPERATION error is generated.

-			return error(GL_INVALID_OPERATION);

-		}

-

 		context->bindRenderbuffer(renderbuffer);

 	}

 }