Index: src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp |
diff --git a/src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp b/src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp |
index 72311c417ec700790db66fe07683eb287ac92051..6f03fa4723aba01556b15494ef5f555d72dc3c33 100644 |
--- a/src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp |
+++ b/src/gpu/gl/android/GrGLCreateNativeInterface_android.cpp |
@@ -24,7 +24,7 @@ static const GrGLInterface* create_es_interface(GrGLVersion version, |
} |
GrGLInterface* interface = SkNEW(GrGLInterface); |
- interface->fStandard = kGLES_GrGLStandard; |
+ interface->fBindingsExported = kES_GrGLBinding; |
interface->fActiveTexture = glActiveTexture; |
interface->fAttachShader = glAttachShader; |
@@ -222,7 +222,7 @@ static const GrGLInterface* create_desktop_interface(GrGLVersion version, |
} |
GrGLInterface* interface = SkNEW(GrGLInterface); |
- interface->fStandard = kGL_GrGLStandard; |
+ interface->fBindingsExported = kDesktop_GrGLBinding; |
interface->fActiveTexture = (GrGLActiveTextureProc) eglGetProcAddress("glActiveTexture"); |
interface->fAttachShader = (GrGLAttachShaderProc) eglGetProcAddress("glAttachShader"); |
@@ -417,18 +417,23 @@ const GrGLInterface* GrGLCreateNativeInterface() { |
const char* verStr = reinterpret_cast<const char*>(glGetString(GR_GL_VERSION)); |
GrGLVersion version = GrGLGetVersionFromString(verStr); |
- GrGLStandard standard = GrGLGetStandardInUseFromString(verStr); |
+ GrGLBinding binding = GrGLGetBindingInUseFromString(verStr); |
GrGLExtensions extensions; |
- if (!extensions.init(standard, glGetString, getStringi, glGetIntegerv)) { |
+ if (!extensions.init(binding, glGetString, getStringi, glGetIntegerv)) { |
return NULL; |
} |
- if (kGLES_GrGLStandard == standard) { |
- return create_es_interface(version, extensions); |
- } else if (kGL_GrGLStandard == standard) { |
- return create_desktop_interface(version, extensions); |
- } else { |
- return NULL; |
+ GrGLInterface* interface = NULL; |
+ if (kES_GrGLBinding == binding) { |
+ interface = create_es_interface(version, extensions); |
+ } else if (kDesktop_GrGLBinding == binding) { |
+ interface = create_desktop_interface(version, extensions); |
+ } |
+ |
+ if (NULL != interface) { |
+ interface->fExtensions.swap(&extensions); |
} |
+ |
+ return interface; |
} |