Loading opengl/libs/EGL/egl_display.cpp +0 −13 Original line number Diff line number Diff line Loading @@ -64,11 +64,6 @@ bool findExtension(const char* exts, const char* name, size_t nameLen) { return false; } bool needsAndroidPEglMitigation() { static const int32_t vndk_version = base::GetIntProperty("ro.vndk.version", -1); return vndk_version <= 28; } int egl_get_init_count(EGLDisplay dpy) { egl_display_t* eglDisplay = egl_display_t::get(dpy); return eglDisplay ? eglDisplay->getRefsCount() : 0; Loading Loading @@ -365,14 +360,6 @@ EGLBoolean egl_display_t::initialize(EGLint* major, EGLint* minor) { if (len) { // NOTE: we could avoid the copy if we had strnstr. const std::string ext(start, len); // Mitigation for Android P vendor partitions: Adreno 530 driver shipped on // some Android P vendor partitions this extension under the draft KHR name, // but during Khronos review it was decided to demote it to EXT. if (needsAndroidPEglMitigation() && ext == "EGL_EXT_image_gl_colorspace" && findExtension(disp.queryString.extensions, "EGL_KHR_image_gl_colorspace")) { mExtensionString.append("EGL_EXT_image_gl_colorspace "); } if (findExtension(disp.queryString.extensions, ext.c_str(), len)) { mExtensionString.append(ext + " "); } Loading opengl/libs/EGL/egl_display.h +0 −1 Original line number Diff line number Diff line Loading @@ -39,7 +39,6 @@ class egl_context_t; struct egl_connection_t; bool findExtension(const char* exts, const char* name, size_t nameLen = 0); bool needsAndroidPEglMitigation(); class EGLAPI egl_display_t { // marked as EGLAPI for testing purposes static std::map<EGLDisplay, std::unique_ptr<egl_display_t>> displayMap; Loading opengl/libs/EGL/egl_platform_entries.cpp +1 −22 Original line number Diff line number Diff line Loading @@ -1644,26 +1644,6 @@ EGLImageKHR eglCreateImageTmpl(EGLDisplay dpy, EGLContext ctx, EGLenum target, const egl_display_t* dp = validate_display(dpy); if (!dp) return EGL_NO_IMAGE_KHR; std::vector<AttrType> strippedAttribs; if (needsAndroidPEglMitigation()) { // Mitigation for Android P vendor partitions: eglImageCreateKHR should accept // EGL_GL_COLORSPACE_LINEAR_KHR, EGL_GL_COLORSPACE_SRGB_KHR and // EGL_GL_COLORSPACE_DEFAULT_EXT if EGL_EXT_image_gl_colorspace is supported, // but some drivers don't like the DEFAULT value and generate an error. for (const AttrType* attr = attrib_list; attr && attr[0] != EGL_NONE; attr += 2) { if (attr[0] == EGL_GL_COLORSPACE_KHR && dp->haveExtension("EGL_EXT_image_gl_colorspace")) { if (attr[1] != EGL_GL_COLORSPACE_LINEAR_KHR && attr[1] != EGL_GL_COLORSPACE_SRGB_KHR) { continue; } } strippedAttribs.push_back(attr[0]); strippedAttribs.push_back(attr[1]); } strippedAttribs.push_back(EGL_NONE); } ContextRef _c(dp, ctx); egl_context_t* const c = _c.get(); Loading @@ -1671,8 +1651,7 @@ EGLImageKHR eglCreateImageTmpl(EGLDisplay dpy, EGLContext ctx, EGLenum target, egl_connection_t* const cnx = &gEGLImpl; if (cnx->dso && eglCreateImageFunc) { result = eglCreateImageFunc(dp->disp.dpy, c ? c->context : EGL_NO_CONTEXT, target, buffer, needsAndroidPEglMitigation() ? strippedAttribs.data() : attrib_list); attrib_list); } return result; } Loading Loading
opengl/libs/EGL/egl_display.cpp +0 −13 Original line number Diff line number Diff line Loading @@ -64,11 +64,6 @@ bool findExtension(const char* exts, const char* name, size_t nameLen) { return false; } bool needsAndroidPEglMitigation() { static const int32_t vndk_version = base::GetIntProperty("ro.vndk.version", -1); return vndk_version <= 28; } int egl_get_init_count(EGLDisplay dpy) { egl_display_t* eglDisplay = egl_display_t::get(dpy); return eglDisplay ? eglDisplay->getRefsCount() : 0; Loading Loading @@ -365,14 +360,6 @@ EGLBoolean egl_display_t::initialize(EGLint* major, EGLint* minor) { if (len) { // NOTE: we could avoid the copy if we had strnstr. const std::string ext(start, len); // Mitigation for Android P vendor partitions: Adreno 530 driver shipped on // some Android P vendor partitions this extension under the draft KHR name, // but during Khronos review it was decided to demote it to EXT. if (needsAndroidPEglMitigation() && ext == "EGL_EXT_image_gl_colorspace" && findExtension(disp.queryString.extensions, "EGL_KHR_image_gl_colorspace")) { mExtensionString.append("EGL_EXT_image_gl_colorspace "); } if (findExtension(disp.queryString.extensions, ext.c_str(), len)) { mExtensionString.append(ext + " "); } Loading
opengl/libs/EGL/egl_display.h +0 −1 Original line number Diff line number Diff line Loading @@ -39,7 +39,6 @@ class egl_context_t; struct egl_connection_t; bool findExtension(const char* exts, const char* name, size_t nameLen = 0); bool needsAndroidPEglMitigation(); class EGLAPI egl_display_t { // marked as EGLAPI for testing purposes static std::map<EGLDisplay, std::unique_ptr<egl_display_t>> displayMap; Loading
opengl/libs/EGL/egl_platform_entries.cpp +1 −22 Original line number Diff line number Diff line Loading @@ -1644,26 +1644,6 @@ EGLImageKHR eglCreateImageTmpl(EGLDisplay dpy, EGLContext ctx, EGLenum target, const egl_display_t* dp = validate_display(dpy); if (!dp) return EGL_NO_IMAGE_KHR; std::vector<AttrType> strippedAttribs; if (needsAndroidPEglMitigation()) { // Mitigation for Android P vendor partitions: eglImageCreateKHR should accept // EGL_GL_COLORSPACE_LINEAR_KHR, EGL_GL_COLORSPACE_SRGB_KHR and // EGL_GL_COLORSPACE_DEFAULT_EXT if EGL_EXT_image_gl_colorspace is supported, // but some drivers don't like the DEFAULT value and generate an error. for (const AttrType* attr = attrib_list; attr && attr[0] != EGL_NONE; attr += 2) { if (attr[0] == EGL_GL_COLORSPACE_KHR && dp->haveExtension("EGL_EXT_image_gl_colorspace")) { if (attr[1] != EGL_GL_COLORSPACE_LINEAR_KHR && attr[1] != EGL_GL_COLORSPACE_SRGB_KHR) { continue; } } strippedAttribs.push_back(attr[0]); strippedAttribs.push_back(attr[1]); } strippedAttribs.push_back(EGL_NONE); } ContextRef _c(dp, ctx); egl_context_t* const c = _c.get(); Loading @@ -1671,8 +1651,7 @@ EGLImageKHR eglCreateImageTmpl(EGLDisplay dpy, EGLContext ctx, EGLenum target, egl_connection_t* const cnx = &gEGLImpl; if (cnx->dso && eglCreateImageFunc) { result = eglCreateImageFunc(dp->disp.dpy, c ? c->context : EGL_NO_CONTEXT, target, buffer, needsAndroidPEglMitigation() ? strippedAttribs.data() : attrib_list); attrib_list); } return result; } Loading