Implemented mipmap generation for 2D array textures.

TRAC #22927

Signed-off-by: Jamie Madill
Signed-off-by: Nicolas Capens
Author: Geoff Lang

git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2276 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/libGLESv2.cpp b/src/libGLESv2/libGLESv2.cpp
index abf93b1..cc7155f 100644
--- a/src/libGLESv2/libGLESv2.cpp
+++ b/src/libGLESv2/libGLESv2.cpp
@@ -3201,6 +3201,23 @@
                     break;
                 }
 
+                case GL_TEXTURE_2D_ARRAY:
+                  {
+                      if (context->getClientVersion() < 3)
+                      {
+                          return gl::error(GL_INVALID_ENUM);
+                      }
+
+                      gl::Texture2DArray *tex2darr = context->getTexture2DArray();
+                      if (tex2darr->isCompressed(0))
+                      {
+                          return gl::error(GL_INVALID_OPERATION);
+                      }
+
+                      tex2darr->generateMipmaps();
+                      break;
+                  }
+
               default:
                 return gl::error(GL_INVALID_ENUM);
             }