Add helper methods for FBO attachment validation.
Subsequent refactoring will eliminate duplicate code.
BUG=angle:571
Change-Id: I086320beb5c432c326d29d047931575e6f2a1d64
Reviewed-on: https://chromium-review.googlesource.com/205603
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
diff --git a/src/libGLESv2/libGLESv2.cpp b/src/libGLESv2/libGLESv2.cpp
index eca7d71..630330c 100644
--- a/src/libGLESv2/libGLESv2.cpp
+++ b/src/libGLESv2/libGLESv2.cpp
@@ -1877,14 +1877,7 @@
gl::Context *context = gl::getNonLostContext();
if (context)
{
- if (context->getClientVersion() < 3 &&
- !ValidateES2FramebufferTextureParameters(context, target, attachment, textarget, texture, level))
- {
- return;
- }
-
- if (context->getClientVersion() >= 3 &&
- !ValidateES3FramebufferTextureParameters(context, target, attachment, textarget, texture, level, 0, false))
+ if (!ValidateFramebufferTexture2D(context, target, attachment, textarget, texture, level))
{
return;
}
@@ -6736,12 +6729,8 @@
if (context)
{
- if (context->getClientVersion() < 3)
- {
- return gl::error(GL_INVALID_OPERATION);
- }
-
- if (!ValidateES3FramebufferTextureParameters(context, target, attachment, GL_NONE, texture, level, layer, true))
+ if (!ValidateFramebufferTextureLayer(context, target, attachment, texture,
+ level, layer))
{
return;
}
@@ -6761,9 +6750,9 @@
{
switch (attachment)
{
- case GL_DEPTH_ATTACHMENT: framebuffer->setDepthbuffer(textarget, texture, level, layer); break;
- case GL_STENCIL_ATTACHMENT: framebuffer->setStencilbuffer(textarget, texture, level, layer); break;
- case GL_DEPTH_STENCIL_ATTACHMENT: framebuffer->setDepthStencilBuffer(textarget, texture, level, layer); break;
+ case GL_DEPTH_ATTACHMENT: framebuffer->setDepthbuffer(textarget, texture, level, layer); break;
+ case GL_STENCIL_ATTACHMENT: framebuffer->setStencilbuffer(textarget, texture, level, layer); break;
+ case GL_DEPTH_STENCIL_ATTACHMENT: framebuffer->setDepthStencilBuffer(textarget, texture, level, layer); break;
}
}
}