fix evas gl_x11 in 16bpp (and similar depths).

This commit is contained in:
Carsten Haitzler 2013-04-18 15:16:40 +09:00
parent 3b81d4aa51
commit 7cae29becd
3 changed files with 18 additions and 7 deletions

View File

@ -1,3 +1,8 @@
2013-04-14 Carsten Haitzler (The Rasterman)
* Evas: Fix evas gl_x11 to use default depth when visual
matching so lower depth displays work
2013-04-15 ChunEon Park
* Evas: If an object goes to be hidden without replacing the cur/prev
state info, the object context can be corrupted at the next show time.

2
NEWS
View File

@ -249,4 +249,4 @@ Fixes:
* Evas: fix gif bug related with scale down decode.
* Evas textblock: Fixed a bug with deletion of ranges that end just a visual format.
* Evas: If an object goes to be hidden without replacing the cur/prev state info, the object context can be corrupted at the next show time. Now it replaces the cur/prev in that rare case.
* Evas: Fix evas gl_x11 in 16bpp and lower depths than 24/32 bpp.

View File

@ -669,7 +669,7 @@ eng_best_visual_get(Evas_Engine_Info_GL_X11 *einfo)
config_attrs[i++] = GLX_RED_SIZE;
config_attrs[i++] = 1;
config_attrs[i++] = GLX_GREEN_SIZE;
config_attrs[i++] =1;
config_attrs[i++] = 1;
config_attrs[i++] = GLX_BLUE_SIZE;
config_attrs[i++] = 1;
if (alpha)
@ -715,11 +715,17 @@ eng_best_visual_get(Evas_Engine_Info_GL_X11 *einfo)
if (!alpha)
{
config = configs[i];
_evas_gl_x11_vi = malloc(sizeof(XVisualInfo));
memcpy(_evas_gl_x11_vi, visinfo, sizeof(XVisualInfo));
fbconf = config;
XFree(visinfo);
break;
// ensure depth matches default depth!
if (DefaultDepth(einfo->info.display, 0) ==
visinfo->depth)
{
_evas_gl_x11_vi = malloc(sizeof(XVisualInfo));
memcpy(_evas_gl_x11_vi, visinfo,
sizeof(XVisualInfo));
fbconf = config;
XFree(visinfo);
break;
}
}
else
{