summaryrefslogtreecommitdiff
path: root/src/modules/evas/engines/gl_common/evas_gl_context.c
diff options
context:
space:
mode:
authorCedric BAIL <cedric@osg.samsung.com>2015-10-12 17:22:27 -0700
committerCedric BAIL <cedric@osg.samsung.com>2015-10-12 17:47:40 -0700
commitf51168f4ec7a1bd3072428c7a271ad7c6715fde5 (patch)
tree0290ba4b5f09da7cedce8016d678f4a4f3029288 /src/modules/evas/engines/gl_common/evas_gl_context.c
parent5c02935a866a5c1468603ca774c06efc80d5c2e0 (diff)
Revert "Revert "evas: fix borked rotation support in GL engine.""
This reverts commit 5bb1c52e3a075d3a69b5baee2f2ad8d2788655b0. This patch is actually correct, but it highlight a bug in how we retrieve GLX_Y_INVERTED_EXT value.
Diffstat (limited to '')
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_context.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/modules/evas/engines/gl_common/evas_gl_context.c b/src/modules/evas/engines/gl_common/evas_gl_context.c
index bb0a754bf7..dbfdc55cb5 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_context.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_context.c
@@ -2184,16 +2184,13 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc,
2184 ox4 = sx; 2184 ox4 = sx;
2185 oy4 = sy + sh; 2185 oy4 = sy + sh;
2186 2186
2187 if ((tex->im) && (tex->im->native.data)) 2187 if (tex->im)
2188 { 2188 {
2189 if (tex->im->native.func.yinvert) 2189 if ((tex->im->native.func.yinvert) && (tex->im->native.data))
2190 yinvert = tex->im->native.func.yinvert(tex->im->native.func.data, tex->im); 2190 yinvert = tex->im->native.func.yinvert(tex->im->native.func.data, tex->im);
2191 else 2191 else
2192 yinvert = tex->im->native.yinvert; 2192 yinvert = tex->im->native.yinvert;
2193 }
2194 2193
2195 if ((tex->im) && (tex->im->native.data) && (!yinvert))
2196 {
2197 switch (tex->im->orient) 2194 switch (tex->im->orient)
2198 { 2195 {
2199 case EVAS_IMAGE_ORIENT_NONE: 2196 case EVAS_IMAGE_ORIENT_NONE:
@@ -2253,7 +2250,7 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc,
2253 ty3 = ((double)(offsety) + oy3) / ph; 2250 ty3 = ((double)(offsety) + oy3) / ph;
2254 tx4 = ((double)(offsetx) + ox4) / pw; 2251 tx4 = ((double)(offsetx) + ox4) / pw;
2255 ty4 = ((double)(offsety) + oy4) / ph; 2252 ty4 = ((double)(offsety) + oy4) / ph;
2256 if ((tex->im) && (tex->im->native.data) && (!tex->im->native.yinvert)) 2253 if ((tex->im) && (yinvert))
2257 { 2254 {
2258 ty1 = 1.0 - ty1; 2255 ty1 = 1.0 - ty1;
2259 ty2 = 1.0 - ty2; 2256 ty2 = 1.0 - ty2;
@@ -2272,7 +2269,7 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc,
2272 } 2269 }
2273 2270
2274 PUSH_MASK(pn, mtex, mx, my, mw, mh, masksam); 2271 PUSH_MASK(pn, mtex, mx, my, mw, mh, masksam);
2275 2272
2276 if (!nomul) 2273 if (!nomul)
2277 PUSH_6_COLORS(pn, r, g, b, a); 2274 PUSH_6_COLORS(pn, r, g, b, a);
2278} 2275}