Roll skia to 2303
Review URL: http://codereview.chromium.org/7977031

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102366 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/DEPS b/DEPS
index 4a11b62..ff96dcb 100644
--- a/DEPS
+++ b/DEPS
@@ -29,7 +29,7 @@
   "libvpx_revision": "97420",
   "ffmpeg_revision": "99115",
   "sfntly_revision": "54",
-  "skia_revision": "2291",
+  "skia_revision": "2303",
   "v8_revision": "9288",
   "webrtc_revision": "634",
 
diff --git a/gpu/command_buffer/common/gl_mock.h b/gpu/command_buffer/common/gl_mock.h
index bdd328c..4c5c114 100644
--- a/gpu/command_buffer/common/gl_mock.h
+++ b/gpu/command_buffer/common/gl_mock.h
@@ -28,6 +28,9 @@
 
   MOCK_METHOD2(BindBuffer, void(GLenum target, GLuint buffer));
 
+  MOCK_METHOD3(BindFragDataLocation, void(GLuint program, GLuint colorNumber,
+      const char* name));
+
   MOCK_METHOD4(BindFragDataLocationIndexedARB, void(GLuint program,
       GLuint colorNumber, GLuint index, const char* name));
 
diff --git a/ui/gfx/gl/generate_bindings.py b/ui/gfx/gl/generate_bindings.py
index 055e4e49..a39a1f511 100644
--- a/ui/gfx/gl/generate_bindings.py
+++ b/ui/gfx/gl/generate_bindings.py
@@ -16,6 +16,8 @@
 ['void', ['glBindAttribLocation'],
     'GLuint program, GLuint index, const char* name'],
 ['void', ['glBindBuffer'], 'GLenum target, GLuint buffer'],
+['void', ['glBindFragDataLocation'],
+    'GLuint program, GLuint colorNumber, const char* name'],
 ['void', ['glBindFragDataLocationIndexedARB'],
     'GLuint program, GLuint colorNumber, GLuint index, const char* name'],
 ['void', ['glBindFramebufferEXT', 'glBindFramebuffer'],
diff --git a/ui/gfx/gl/gl_bindings_skia_in_process.cc b/ui/gfx/gl/gl_bindings_skia_in_process.cc
index aa92603d..dfd4e57 100644
--- a/ui/gfx/gl/gl_bindings_skia_in_process.cc
+++ b/ui/gfx/gl/gl_bindings_skia_in_process.cc
@@ -35,8 +35,13 @@
   glBindBuffer(target, buffer);
 }
 
-GLvoid StubBindFragDataLocationIndexedARB(GLuint program, GLuint colorNumber,
-                                          GLuint index, const GLchar * name) {
+GLvoid StubGLBindFragDataLocation(GLuint program, GLuint colorNumber,
+                                  const GLchar * name) {
+  glBindFragDataLocation(program, colorNumber, name);
+}
+
+GLvoid StubGLBindFragDataLocationIndexedARB(GLuint program, GLuint colorNumber,
+                                            GLuint index, const GLchar * name) {
   glBindFragDataLocationIndexedARB(program, colorNumber, index, name);
 }
 
@@ -499,6 +504,7 @@
   interface->fAttachShader = StubGLAttachShader;
   interface->fBindAttribLocation = StubGLBindAttribLocation;
   interface->fBindBuffer = StubGLBindBuffer;
+  interface->fBindFragDataLocation = StubGLBindFragDataLocation;
   interface->fBindTexture = StubGLBindTexture;
   interface->fBlendColor = StubGLBlendColor;
   interface->fBlendFunc = StubGLBlendFunc;
@@ -597,7 +603,7 @@
   interface->fMapBuffer = StubGLMapBuffer;
   interface->fUnmapBuffer = StubGLUnmapBuffer;
   interface->fBindFragDataLocationIndexed =
-    StubBindFragDataLocationIndexedARB;
+    StubGLBindFragDataLocationIndexedARB;
   return interface;
 }
 
diff --git a/ui/gfx/gl/gl_interface.h b/ui/gfx/gl/gl_interface.h
index c7fbf8a..b4e82b5eb 100644
--- a/ui/gfx/gl/gl_interface.h
+++ b/ui/gfx/gl/gl_interface.h
@@ -39,6 +39,10 @@
                                               GLuint index,
                                               const char* name) = 0;
 
+  virtual void BindFragDataLocation(GLuint program,
+                                    GLuint colorNumber,
+                                    const char* name) = 0;
+
   virtual void BindFramebufferEXT(GLenum target, GLuint framebuffer) = 0;
 
   virtual void BindRenderbufferEXT(GLenum target, GLuint renderbuffer) = 0;