Pass GL context data into shader creation.

This allows us to remove the hack where we store the current GL
client version in the Renderer.

BUG=angle:789

Change-Id: I6526f11eaa922325a9a41df0df48b2152e022e26
Reviewed-on: https://chromium-review.googlesource.com/227713
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libGLESv2/ResourceManager.cpp b/src/libGLESv2/ResourceManager.cpp
index ac6a0a2..38d53ca 100644
--- a/src/libGLESv2/ResourceManager.cpp
+++ b/src/libGLESv2/ResourceManager.cpp
@@ -88,13 +88,13 @@
 }
 
 // Returns an unused shader/program name
-GLuint ResourceManager::createShader(GLenum type)
+GLuint ResourceManager::createShader(const gl::Data &data, GLenum type)
 {
     GLuint handle = mProgramShaderHandleAllocator.allocate();
 
     if (type == GL_VERTEX_SHADER || type == GL_FRAGMENT_SHADER)
     {
-        mShaderMap[handle] = new Shader(this, mRenderer->createShader(type), type, handle);
+        mShaderMap[handle] = new Shader(this, mRenderer->createShader(data, type), type, handle);
     }
     else UNREACHABLE();