FramebufferTextureLayer fix

Fixed a few things related to FramebufferTextureLayer:
- Added layer validation to make sure it does not exceed
  the size of the 3D texture's or 2D array's depth.
- Fixed frambuffer target / texture target confusion.
- Removed bad validation.
- Fixed last 2 arguments of set[insert type]Buffer calls
  (layer and level) which were inverted.

Change-Id: Ie1f2cb595d8b9abfee27bcf834c535f7e023e3ee
Reviewed-on: https://swiftshader-review.googlesource.com/4343
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libGLESv2/Renderbuffer.cpp b/src/OpenGL/libGLESv2/Renderbuffer.cpp
index 2f641f6..9118713 100644
--- a/src/OpenGL/libGLESv2/Renderbuffer.cpp
+++ b/src/OpenGL/libGLESv2/Renderbuffer.cpp
@@ -191,6 +191,11 @@
 	return mTexture3D->getHeight(mTexture3D->getTarget(), mLevel);
 }
 
+GLsizei RenderbufferTexture3D::getDepth() const
+{
+	return mTexture3D->getDepth(mTexture3D->getTarget(), mLevel);
+}
+
 GLenum RenderbufferTexture3D::getFormat() const
 {
 	return mTexture3D->getFormat(mTexture3D->getTarget(), mLevel);
@@ -332,6 +337,11 @@
 	return mInstance->getHeight();
 }
 
+GLsizei Renderbuffer::getDepth() const
+{
+	return mInstance->getDepth();
+}
+
 GLint Renderbuffer::getLayer() const
 {
 	return mInstance->getLayer();