Revert "Revert "evas: fix borked rotation support in GL engine.""

This reverts commit 5bb1c52e3a.

This patch is actually correct, but it highlight a bug in how we
retrieve GLX_Y_INVERTED_EXT value.
This commit is contained in:
Cedric BAIL 2015-10-12 17:22:27 -07:00
parent 5c02935a86
commit f51168f4ec
1 changed files with 4 additions and 7 deletions

View File

@ -2184,16 +2184,13 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc,
ox4 = sx;
oy4 = sy + sh;
if ((tex->im) && (tex->im->native.data))
if (tex->im)
{
if (tex->im->native.func.yinvert)
if ((tex->im->native.func.yinvert) && (tex->im->native.data))
yinvert = tex->im->native.func.yinvert(tex->im->native.func.data, tex->im);
else
yinvert = tex->im->native.yinvert;
}
if ((tex->im) && (tex->im->native.data) && (!yinvert))
{
switch (tex->im->orient)
{
case EVAS_IMAGE_ORIENT_NONE:
@ -2253,7 +2250,7 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc,
ty3 = ((double)(offsety) + oy3) / ph;
tx4 = ((double)(offsetx) + ox4) / pw;
ty4 = ((double)(offsety) + oy4) / ph;
if ((tex->im) && (tex->im->native.data) && (!tex->im->native.yinvert))
if ((tex->im) && (yinvert))
{
ty1 = 1.0 - ty1;
ty2 = 1.0 - ty2;
@ -2272,7 +2269,7 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc,
}
PUSH_MASK(pn, mtex, mx, my, mw, mh, masksam);
if (!nomul)
PUSH_6_COLORS(pn, r, g, b, a);
}