Usally, evas_object_image_save() in gl backend need to rotate image_data for save.
but if application call evas_object_image_save() after elm_image_orient_set(),
it can make strange calculation by img_object for save().
so it need to be deleted after save image file.
Change-Id: I1ddf7bf3e7a49888f2ca48e499305f808cafe297
unsigned char direct : 1; // evas gl direct renderable
/*Disable generate atlas for texture unit, EINA_FALSE by default*/
Eina_Bool disable_atlas : 1;
+ Eina_Bool rotated : 1; // check eng_image_orient_set() called
};
struct _Evas_GL_Font_Texture
if (im->native.data)
return im;
- if (im->im &&
- im->orient != EVAS_IMAGE_ORIENT_NONE)
+ if (im->im && im->rotated)
{
im_new = _rotate_image_data(data, image);
if (!im_new)
if (err) *err = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED;
return im;
}
- evas_gl_common_image_free(im);
*image_data = im_new->im->image.data;
+ if (tofree) *tofree = EINA_TRUE;
return im_new;
}
im_new->cached = EINA_FALSE;
im_new->orient = orient;
+ im_new->rotated = EINA_TRUE;
im_new->tex = im->tex;
im_new->tex->references++;
im_new->tex->pt->references++;