forked from enlightenment/efl
fix nvidia texture from pixmap config depth match to be looser to
avoid non-matches.
This commit is contained in:
parent
6e90a37990
commit
e5065da29c
|
@ -2183,13 +2183,17 @@ eng_image_native_set(void *data, void *image, void *native)
|
||||||
&num);
|
&num);
|
||||||
if (configs)
|
if (configs)
|
||||||
{
|
{
|
||||||
int j = 0, val = 0;
|
int j = 0, val = 0, found = 0;
|
||||||
|
|
||||||
|
try_again:
|
||||||
for (j = 0; j < num; j++)
|
for (j = 0; j < num; j++)
|
||||||
{
|
{
|
||||||
glXGetFBConfigAttrib(re->win->disp, configs[j],
|
if (found == 0)
|
||||||
GLX_BUFFER_SIZE, &val);
|
{
|
||||||
if (val != depth) continue;
|
glXGetFBConfigAttrib(re->win->disp, configs[j],
|
||||||
|
GLX_BUFFER_SIZE, &val);
|
||||||
|
if (val != depth) continue;
|
||||||
|
}
|
||||||
glXGetFBConfigAttrib(re->win->disp, configs[j],
|
glXGetFBConfigAttrib(re->win->disp, configs[j],
|
||||||
GLX_DRAWABLE_TYPE, &val);
|
GLX_DRAWABLE_TYPE, &val);
|
||||||
if (!(val & GLX_PIXMAP_BIT)) continue;
|
if (!(val & GLX_PIXMAP_BIT)) continue;
|
||||||
|
@ -2220,8 +2224,14 @@ eng_image_native_set(void *data, void *image, void *native)
|
||||||
GLX_BIND_TO_MIPMAP_TEXTURE_EXT, &val);
|
GLX_BIND_TO_MIPMAP_TEXTURE_EXT, &val);
|
||||||
mipmap = val;
|
mipmap = val;
|
||||||
n->fbc = configs[j];
|
n->fbc = configs[j];
|
||||||
|
found = 1;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
if (found == 0)
|
||||||
|
{
|
||||||
|
found = -1;
|
||||||
|
goto try_again;
|
||||||
|
}
|
||||||
XFree(configs);
|
XFree(configs);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue