Merge "fix a crasher in our EGL wrapper when attrib_list is NULL in eglChooseConfig" into kraken
This commit is contained in:
committed by
Android (Google) Code Review
commit
23100fd1ec
@@ -1525,8 +1525,13 @@ EGLBoolean eglChooseConfig( EGLDisplay dpy, const EGLint *attrib_list,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (ggl_unlikely(attrib_list==0)) {
|
if (ggl_unlikely(attrib_list==0)) {
|
||||||
*num_config = 0;
|
/*
|
||||||
return EGL_TRUE;
|
* A NULL attrib_list should be treated as though it was an empty
|
||||||
|
* one (terminated with EGL_NONE) as defined in
|
||||||
|
* section 3.4.1 "Querying Configurations" in the EGL specification.
|
||||||
|
*/
|
||||||
|
static const EGLint dummy = EGL_NONE;
|
||||||
|
attrib_list = &dummy;
|
||||||
}
|
}
|
||||||
|
|
||||||
int numAttributes = 0;
|
int numAttributes = 0;
|
||||||
|
|||||||
@@ -843,10 +843,12 @@ EGLBoolean eglChooseConfig( EGLDisplay dpy, const EGLint *attrib_list,
|
|||||||
EGLint patch_index = -1;
|
EGLint patch_index = -1;
|
||||||
GLint attr;
|
GLint attr;
|
||||||
size_t size = 0;
|
size_t size = 0;
|
||||||
while ((attr=attrib_list[size]) != EGL_NONE) {
|
if (attrib_list) {
|
||||||
if (attr == EGL_CONFIG_ID)
|
while ((attr=attrib_list[size]) != EGL_NONE) {
|
||||||
patch_index = size;
|
if (attr == EGL_CONFIG_ID)
|
||||||
size += 2;
|
patch_index = size;
|
||||||
|
size += 2;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (patch_index >= 0) {
|
if (patch_index >= 0) {
|
||||||
size += 2; // we need copy the sentinel as well
|
size += 2; // we need copy the sentinel as well
|
||||||
|
|||||||
Reference in New Issue
Block a user