Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 329904ff authored by Jesse Hall's avatar Jesse Hall Committed by Gerrit Code Review
Browse files

Merge "Handle glGetString returning NULL"

parents f9c4e2cc 09fc8f95
Loading
Loading
Loading
Loading
+16 −10
Original line number Original line Diff line number Diff line
@@ -113,6 +113,11 @@ void egl_context_t::onMakeCurrent(EGLSurface draw, EGLSurface read) {
    if (gl_extensions.empty()) {
    if (gl_extensions.empty()) {
        // call the implementation's glGetString(GL_EXTENSIONS)
        // call the implementation's glGetString(GL_EXTENSIONS)
        const char* exts = (const char *)gEGLImpl.hooks[version]->gl.glGetString(GL_EXTENSIONS);
        const char* exts = (const char *)gEGLImpl.hooks[version]->gl.glGetString(GL_EXTENSIONS);

        // If this context is sharing with another context, and the other context was reset
        // e.g. due to robustness failure, this context might also be reset and glGetString can
        // return NULL.
        if (exts) {
            gl_extensions = exts;
            gl_extensions = exts;
            if (gl_extensions.find("GL_EXT_debug_marker") == std::string::npos) {
            if (gl_extensions.find("GL_EXT_debug_marker") == std::string::npos) {
                gl_extensions.insert(0, "GL_EXT_debug_marker ");
                gl_extensions.insert(0, "GL_EXT_debug_marker ");
@@ -127,6 +132,7 @@ void egl_context_t::onMakeCurrent(EGLSurface draw, EGLSurface read) {
            }
            }
        }
        }
    }
    }
}


// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
}; // namespace android
}; // namespace android