summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2014-10-27 19:51:10 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2014-10-27 19:52:03 +0900
commit43acb28cdbba13f3d43ce2a5d9d2dd55847a4738 (patch)
tree7cb37f37420d9b0e307dafbf51c3d77317539c40
parent890ad5dd95dced2934e72bdcee4716980334f054 (diff)
evas - sw generic - fix osmesa to not use rgb buffers as evas doesnt know
this fixes incorrect sw osmesa rendering when no alpha cannel is used on evas gl targets.
-rw-r--r--src/modules/evas/engines/software_generic/evas_engine.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/modules/evas/engines/software_generic/evas_engine.c b/src/modules/evas/engines/software_generic/evas_engine.c
index 48e063d..24cbf21 100644
--- a/src/modules/evas/engines/software_generic/evas_engine.c
+++ b/src/modules/evas/engines/software_generic/evas_engine.c
@@ -2307,8 +2307,13 @@ eng_gl_surface_create(void *data EINA_UNUSED, void *config, int w, int h)
2307 { 2307 {
2308 2308
2309 case EVAS_GL_RGB_888: 2309 case EVAS_GL_RGB_888:
2310 sfc->internal_fmt = OSMESA_RGB; 2310 sfc->internal_fmt = OSMESA_BGRA;
2311 sfc->internal_cpp = 3; 2311 sfc->internal_cpp = 4;
2312// FIXME: don't allow rgb buffers as evas doesn't understand them so pad out
2313// to 32bit bgra buffers anyway, so for now just pad out - one day do this
2314// nicely
2315// sfc->internal_fmt = OSMESA_RGB;
2316// sfc->internal_cpp = 3;
2312 break; 2317 break;
2313 case EVAS_GL_RGBA_8888: 2318 case EVAS_GL_RGBA_8888:
2314 sfc->internal_fmt = OSMESA_BGRA; 2319 sfc->internal_fmt = OSMESA_BGRA;