Framebuffer completeness multisample fix

Framebuffer completeness, usually verified through
glCheckFramebufferStatus, should return
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE when the number of
samples is not the same for all attached renderbuffers.

Change-Id: I8d29895c6d4ded26847ce47fbd2581bbf06ed1bf
Reviewed-on: https://swiftshader-review.googlesource.com/4363
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libGLESv2/Framebuffer.cpp b/src/OpenGL/libGLESv2/Framebuffer.cpp
index 5e4e808..272a26d 100644
--- a/src/OpenGL/libGLESv2/Framebuffer.cpp
+++ b/src/OpenGL/libGLESv2/Framebuffer.cpp
@@ -314,7 +314,16 @@
 
 			width = colorbuffer->getWidth();
 			height = colorbuffer->getHeight();
-			samples = colorbuffer->getSamples();
+
+			if(samples == -1)
+			{
+				samples = colorbuffer->getSamples();
+			}
+			else if(samples != colorbuffer->getSamples())
+			{
+				return GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE;
+			}
+
 		}
 	}