diff --git a/src/lib/evas/include/evas_common_private.h b/src/lib/evas/include/evas_common_private.h index e649626cfa..53abc4594f 100644 --- a/src/lib/evas/include/evas_common_private.h +++ b/src/lib/evas/include/evas_common_private.h @@ -885,10 +885,9 @@ struct _RGBA_Image struct { void *data; //Evas_Native_Surface ns; struct { - void (*bind) (void *data, void *image, int x, int y, int w, int h); - void (*unbind) (void *data, void *image); - void (*free) (void *data, void *image); - void *data; + void (*bind) (void *image, int x, int y, int w, int h); + void (*unbind) (void *image); + void (*free) (void *image); } func; } native; diff --git a/src/modules/evas/engines/gl_common/evas_gl_common.h b/src/modules/evas/engines/gl_common/evas_gl_common.h index 80e1eb1a8e..4acb119b4f 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_common.h +++ b/src/modules/evas/engines/gl_common/evas_gl_common.h @@ -430,11 +430,10 @@ struct _Evas_GL_Image struct { void *data; struct { - void (*bind) (void *data, void *image); - void (*unbind) (void *data, void *image); - void (*free) (void *data, void *image); - int (*yinvert) (void *data, void *image); - void *data; + void (*bind) (void *image); + void (*unbind) (void *image); + void (*free) (void *image); + int (*yinvert) (void *image); } func; int yinvert; int target; 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 6680f44a80..9d5ffb0841 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_context.c +++ b/src/modules/evas/engines/gl_common/evas_gl_context.c @@ -2134,7 +2134,7 @@ evas_gl_common_context_image_push(Evas_Engine_GL_Context *gc, if ((tex->im) && (tex->im->native.data)) { if (tex->im->native.func.yinvert) - yinvert = tex->im->native.func.yinvert(tex->im->native.func.data, tex->im); + yinvert = tex->im->native.func.yinvert(tex->im); else yinvert = tex->im->native.yinvert; } @@ -2862,7 +2862,7 @@ evas_gl_common_context_image_map_push(Evas_Engine_GL_Context *gc, if ((tex->im) && (tex->im->native.data)) { if (tex->im->native.func.yinvert) - yinvert = tex->im->native.func.yinvert(tex->im->native.func.data, tex->im); + yinvert = tex->im->native.func.yinvert(tex->im); else yinvert = tex->im->native.yinvert; } @@ -3065,8 +3065,7 @@ shader_array_flush(Evas_Engine_GL_Context *gc) if (!gc->pipe[i].array.im->native.loose) { if (gc->pipe[i].array.im->native.func.bind) - gc->pipe[i].array.im->native.func.bind(gc->pipe[i].array.im->native.func.data, - gc->pipe[i].array.im); + gc->pipe[i].array.im->native.func.bind(gc->pipe[i].array.im); } } } @@ -3610,8 +3609,7 @@ shader_array_flush(Evas_Engine_GL_Context *gc) if (!gc->pipe[i].array.im->native.loose) { if (gc->pipe[i].array.im->native.func.unbind) - gc->pipe[i].array.im->native.func.unbind(gc->pipe[i].array.im->native.func.data, - gc->pipe[i].array.im); + gc->pipe[i].array.im->native.func.unbind(gc->pipe[i].array.im); } gc->pipe[i].array.im = NULL; } diff --git a/src/modules/evas/engines/gl_common/evas_gl_image.c b/src/modules/evas/engines/gl_common/evas_gl_image.c index 502ef91871..d982fb42ee 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_image.c +++ b/src/modules/evas/engines/gl_common/evas_gl_image.c @@ -702,7 +702,7 @@ evas_gl_common_image_free(Evas_GL_Image *im) } if (im->native.func.free) - im->native.func.free(im->native.func.data, im); + im->native.func.free(im); if (im->cs.data) { diff --git a/src/modules/evas/engines/gl_common/evas_gl_texture.c b/src/modules/evas/engines/gl_common/evas_gl_texture.c index 71315f6121..273adc1f0f 100644 --- a/src/modules/evas/engines/gl_common/evas_gl_texture.c +++ b/src/modules/evas/engines/gl_common/evas_gl_texture.c @@ -706,7 +706,7 @@ _pool_tex_native_new(Evas_Engine_GL_Context *gc, int w, int h, int intformat, in if (im->native.loose) { if (im->native.func.bind) - im->native.func.bind(im->native.func.data, im); + im->native.func.bind(im); } #endif diff --git a/src/modules/evas/engines/gl_drm/evas_engine.c b/src/modules/evas/engines/gl_drm/evas_engine.c index 25508737c1..91b134dc33 100644 --- a/src/modules/evas/engines/gl_drm/evas_engine.c +++ b/src/modules/evas/engines/gl_drm/evas_engine.c @@ -609,7 +609,7 @@ _re_winfree(Render_Engine *re) } static void -_native_cb_bind(void *data EINA_UNUSED, void *image) +_native_cb_bind(void *image) { Evas_GL_Image *img; Native *n; @@ -637,7 +637,7 @@ _native_cb_bind(void *data EINA_UNUSED, void *image) } static void -_native_cb_unbind(void *data EINA_UNUSED, void *image) +_native_cb_unbind(void *image) { Evas_GL_Image *img; Native *n; @@ -656,7 +656,7 @@ _native_cb_unbind(void *data EINA_UNUSED, void *image) } static void -_native_cb_free(void *data EINA_UNUSED, void *image) +_native_cb_free(void *image) { Evas_GL_Image *img; Native *n; @@ -690,7 +690,6 @@ _native_cb_free(void *data EINA_UNUSED, void *image) } img->native.data = NULL; - img->native.func.data = NULL; img->native.func.bind = NULL; img->native.func.unbind = NULL; img->native.func.free = NULL; @@ -1109,7 +1108,7 @@ eng_image_native_set(void *data, void *image, void *native) if (img->native.data) { if (img->native.func.free) - img->native.func.free(img->native.func.data, img); + img->native.func.free(img); glsym_evas_gl_common_image_native_disable(img); } @@ -1219,7 +1218,6 @@ eng_image_native_set(void *data, void *image, void *native) img->native.disp = ob->egl.disp; img->native.shared = ob->gl_context->shared; img->native.data = n; - img->native.func.data = re; img->native.func.bind = _native_cb_bind; img->native.func.unbind = _native_cb_unbind; img->native.func.free = _native_cb_free; @@ -1247,7 +1245,6 @@ eng_image_native_set(void *data, void *image, void *native) img->native.disp = ob->egl.disp; img->native.shared = ob->gl_context->shared; img->native.data = n; - img->native.func.data = re; img->native.func.bind = _native_cb_bind; img->native.func.unbind = _native_cb_unbind; img->native.func.free = _native_cb_free; diff --git a/src/modules/evas/engines/gl_generic/evas_engine.c b/src/modules/evas/engines/gl_generic/evas_engine.c index 45682ef414..3ce35a6d1b 100644 --- a/src/modules/evas/engines/gl_generic/evas_engine.c +++ b/src/modules/evas/engines/gl_generic/evas_engine.c @@ -303,7 +303,7 @@ eng_image_colorspace_set(void *data, void *image, Evas_Colorspace cspace) } static void -_native_bind_cb(void *data EINA_UNUSED, void *image) +_native_bind_cb(void *image) { Evas_GL_Image *im = image; Evas_Native_Surface *n = im->native.data; @@ -313,7 +313,7 @@ _native_bind_cb(void *data EINA_UNUSED, void *image) } static void -_native_unbind_cb(void *data EINA_UNUSED, void *image) +_native_unbind_cb(void *image) { Evas_GL_Image *im = image; Evas_Native_Surface *n = im->native.data; @@ -323,7 +323,7 @@ _native_unbind_cb(void *data EINA_UNUSED, void *image) } static void -_native_free_cb(void *data EINA_UNUSED, void *image) +_native_free_cb(void *image) { Evas_GL_Image *im = image; Evas_Native_Surface *n = im->native.data; @@ -335,7 +335,6 @@ _native_free_cb(void *data EINA_UNUSED, void *image) eina_hash_del(im->native.shared->native_tex_hash, &texid, im); } im->native.data = NULL; - im->native.func.data = NULL; im->native.func.bind = NULL; im->native.func.unbind = NULL; im->native.func.free = NULL; @@ -418,7 +417,7 @@ eng_image_native_set(void *data, void *image, void *native) if (im->native.data) { if (im->native.func.free) - im->native.func.free(im->native.func.data, im); + im->native.func.free(im); evas_gl_common_image_native_disable(im); } @@ -462,7 +461,6 @@ eng_image_native_set(void *data, void *image, void *native) im->native.loose = 0; im->native.shared = gl_context->shared; im->native.data = n; - im->native.func.data = re; im->native.func.bind = _native_bind_cb; im->native.func.unbind = _native_unbind_cb; im->native.func.free = _native_free_cb; diff --git a/src/modules/evas/engines/gl_x11/evas_engine.c b/src/modules/evas/engines/gl_x11/evas_engine.c index eacd924617..b09ae633d2 100644 --- a/src/modules/evas/engines/gl_x11/evas_engine.c +++ b/src/modules/evas/engines/gl_x11/evas_engine.c @@ -2011,7 +2011,7 @@ end: //#define GLX_TEX_PIXMAP_RECREATE 1 static void -_native_bind_cb(void *data EINA_UNUSED, void *image) +_native_bind_cb(void *image) { Evas_GL_Image *im = image; Native *n = im->native.data; @@ -2109,7 +2109,7 @@ _native_bind_cb(void *data EINA_UNUSED, void *image) } static void -_native_unbind_cb(void *data EINA_UNUSED, void *image) +_native_unbind_cb(void *image) { Evas_GL_Image *im = image; Native *n = im->native.data; @@ -2150,7 +2150,7 @@ _native_unbind_cb(void *data EINA_UNUSED, void *image) } static void -_native_free_cb(void *data EINA_UNUSED, void *image) +_native_free_cb(void *image) { Evas_GL_Image *im = image; Native *n = im->native.data; @@ -2260,7 +2260,6 @@ _native_free_cb(void *data EINA_UNUSED, void *image) #endif } im->native.data = NULL; - im->native.func.data = NULL; im->native.func.bind = NULL; im->native.func.unbind = NULL; im->native.func.free = NULL; @@ -2268,7 +2267,7 @@ _native_free_cb(void *data EINA_UNUSED, void *image) } static int -_native_yinvert_cb(void *data EINA_UNUSED, void *image) +_native_yinvert_cb(void *image) { Evas_GL_Image *im = image; Native *n = im->native.data; @@ -2454,7 +2453,7 @@ eng_image_native_set(void *data, void *image, void *native) if (im->native.data) { if (im->native.func.free) - im->native.func.free(im->native.func.data, im); + im->native.func.free(im); glsym_evas_gl_common_image_native_disable(im); } @@ -2621,7 +2620,6 @@ eng_image_native_set(void *data, void *image, void *native) im->native.disp = eng_get_ob(re)->egl_disp; im->native.shared = eng_get_ob(re)->gl_context->shared; im->native.data = n; - im->native.func.data = re; im->native.func.bind = _native_bind_cb; im->native.func.unbind = _native_unbind_cb; im->native.func.free = _native_free_cb; @@ -2830,7 +2828,6 @@ eng_image_native_set(void *data, void *image, void *native) im->native.disp = eng_get_ob(re)->disp; im->native.shared = eng_get_ob(re)->gl_context->shared; im->native.data = n; - im->native.func.data = re; im->native.func.bind = _native_bind_cb; im->native.func.unbind = _native_unbind_cb; im->native.func.free = _native_free_cb; @@ -2864,7 +2861,6 @@ eng_image_native_set(void *data, void *image, void *native) #endif im->native.shared = eng_get_ob(re)->gl_context->shared; im->native.data = n; - im->native.func.data = re; im->native.func.bind = _native_bind_cb; im->native.func.unbind = _native_unbind_cb; im->native.func.free = _native_free_cb; @@ -2905,7 +2901,6 @@ eng_image_native_set(void *data, void *image, void *native) im->native.disp = eng_get_ob(re)->egl_disp; im->native.shared = eng_get_ob(re)->gl_context->shared; im->native.data = n; - im->native.func.data = re; im->native.func.bind = _native_bind_cb; im->native.func.unbind = _native_unbind_cb; im->native.func.free = _native_free_cb; @@ -2938,7 +2933,6 @@ eng_image_native_set(void *data, void *image, void *native) #endif im->native.shared = eng_get_ob(re)->gl_context->shared; im->native.data = n; - im->native.func.data = re; im->native.func.bind = _native_bind_cb; im->native.func.unbind = _native_unbind_cb; im->native.func.free = _native_free_cb; @@ -3021,7 +3015,6 @@ eng_image_native_set(void *data, void *image, void *native) im->native.disp = eng_get_ob(re)->egl_disp; im->native.shared = eng_get_ob(re)->gl_context->shared; im->native.data = n; - im->native.func.data = re; im->native.func.bind = _native_bind_cb; im->native.func.unbind = _native_unbind_cb; im->native.func.free = _native_free_cb; diff --git a/src/modules/evas/engines/software_generic/evas_engine.c b/src/modules/evas/engines/software_generic/evas_engine.c index 2d50fb3197..1c473a5d8b 100644 --- a/src/modules/evas/engines/software_generic/evas_engine.c +++ b/src/modules/evas/engines/software_generic/evas_engine.c @@ -2252,7 +2252,7 @@ eng_image_draw(void *data EINA_UNUSED, void *context, void *surface, void *image if (!image) return EINA_FALSE; im = image; if (im->native.func.bind) - im->native.func.bind(data, image, src_x, src_y, src_w, src_h); + im->native.func.bind(image, src_x, src_y, src_w, src_h); if (do_async) { @@ -2272,7 +2272,7 @@ eng_image_draw(void *data EINA_UNUSED, void *context, void *surface, void *image if (!im->cache_entry.flags.loaded) { if (im->native.func.unbind) - im->native.func.unbind(data, image); + im->native.func.unbind(image); return EINA_FALSE; } } @@ -2284,7 +2284,7 @@ eng_image_draw(void *data EINA_UNUSED, void *context, void *surface, void *image _image_thr_cb_sample, _image_thr_cb_smooth); if (im->native.func.unbind) - im->native.func.unbind(data, image); + im->native.func.unbind(image); return ret; } #ifdef BUILD_PIPE_RENDER @@ -2319,7 +2319,7 @@ eng_image_draw(void *data EINA_UNUSED, void *context, void *surface, void *image } if (im->native.func.unbind) - im->native.func.unbind(data, image); + im->native.func.unbind(image); return EINA_FALSE; } diff --git a/src/modules/evas/engines/software_generic/evas_native_tbm.c b/src/modules/evas/engines/software_generic/evas_native_tbm.c index c046422a7d..c17d77dda6 100644 --- a/src/modules/evas/engines/software_generic/evas_native_tbm.c +++ b/src/modules/evas/engines/software_generic/evas_native_tbm.c @@ -249,7 +249,6 @@ _native_free_cb(void *data EINA_UNUSED, void *image) im->native.func.bind = NULL; im->native.func.unbind = NULL; im->native.func.free = NULL; - im->native.func.data = NULL; im->image.data = NULL; free(n); diff --git a/src/modules/evas/engines/software_x11/evas_engine.c b/src/modules/evas/engines/software_x11/evas_engine.c index 8f68d43f6e..6db8840465 100644 --- a/src/modules/evas/engines/software_x11/evas_engine.c +++ b/src/modules/evas/engines/software_x11/evas_engine.c @@ -657,13 +657,12 @@ eng_canvas_alpha_get(void *data, void *context EINA_UNUSED) } static void -_native_evasgl_free(void *data EINA_UNUSED, void *image) +_native_evasgl_free(void *image) { RGBA_Image *im = image; Native *n = im->native.data; im->native.data = NULL; - im->native.func.data = NULL; im->native.func.bind = NULL; im->native.func.unbind = NULL; im->native.func.free = NULL; @@ -720,7 +719,7 @@ eng_image_native_set(void *data EINA_UNUSED, void *image, void *native) if (!ns) { if (im->native.data && im->native.func.free) - im->native.func.free(im->native.func.data, im); + im->native.func.free(im); return NULL; } @@ -764,7 +763,7 @@ eng_image_native_set(void *data EINA_UNUSED, void *image, void *native) if (im->native.data) { if (im->native.func.free) - im->native.func.free(im->native.func.data, im); + im->native.func.free(im); } #ifdef EVAS_CSERVE2 @@ -805,7 +804,6 @@ eng_image_native_set(void *data EINA_UNUSED, void *image, void *native) n->ns.data.evasgl.surface = ns->data.evasgl.surface; im->native.data = n; im->native.func.free = _native_evasgl_free; - im->native.func.data = NULL; im->native.func.bind = NULL; im->native.func.unbind = NULL; } diff --git a/src/modules/evas/engines/software_x11/evas_xcb_image.c b/src/modules/evas/engines/software_x11/evas_xcb_image.c index f05968283a..8688d07e71 100644 --- a/src/modules/evas/engines/software_x11/evas_xcb_image.c +++ b/src/modules/evas/engines/software_x11/evas_xcb_image.c @@ -37,7 +37,7 @@ _evas_xcb_image_update(void *data EINA_UNUSED, void *image, int x, int y, int w, } static void -_native_cb_bind(void *data, void *image, int x, int y, int w, int h) +_native_cb_bind(int x, int y, int w, int h) { RGBA_Image *im; Native *n; @@ -46,11 +46,11 @@ _native_cb_bind(void *data, void *image, int x, int y, int w, int h) n = im->native.data; if ((n) && (n->ns.type == EVAS_NATIVE_SURFACE_X11)) - _evas_xcb_image_update(data, image, x, y, w, h); + _evas_xcb_image_update(NULL, image, x, y, w, h); } static void -_native_cb_free(void *data EINA_UNUSED, void *image) +_native_cb_free(void *image) { RGBA_Image *im; Native *n; @@ -66,7 +66,6 @@ _native_cb_free(void *data EINA_UNUSED, void *image) n->ns_data.x11.visual = NULL; im->native.data = NULL; - im->native.func.data = NULL; im->native.func.bind = NULL; im->native.func.unbind = NULL; im->native.func.free = NULL; @@ -115,7 +114,6 @@ evas_xcb_image_native_set(void *data, void *image, void *native) n->ns_data.x11.exim = exim; im->native.data = n; - im->native.func.data = NULL; im->native.func.bind = _native_cb_bind; im->native.func.unbind = NULL; im->native.func.free = _native_cb_free; diff --git a/src/modules/evas/engines/software_x11/evas_xlib_dri_image.c b/src/modules/evas/engines/software_x11/evas_xlib_dri_image.c index fa33391c35..a4fc0e08fb 100644 --- a/src/modules/evas/engines/software_x11/evas_xlib_dri_image.c +++ b/src/modules/evas/engines/software_x11/evas_xlib_dri_image.c @@ -540,7 +540,6 @@ _native_free_cb(void *data EINA_UNUSED, void *image) n->ns_data.x11.display = NULL; im->native.data = NULL; - im->native.func.data = NULL; im->native.func.bind = NULL; im->native.func.free = NULL; im->image.data = NULL; @@ -600,7 +599,6 @@ evas_xlib_image_dri_native_set(void *data, void *image, void *native) n->ns_data.x11.display = d; n->ns_data.x11.exim = exim; im->native.data = n; - im->native.func.data = NULL; im->native.func.bind = _native_bind_cb; im->native.func.free = _native_free_cb; diff --git a/src/modules/evas/engines/software_x11/evas_xlib_image.c b/src/modules/evas/engines/software_x11/evas_xlib_image.c index 75731485e5..fdbcee6422 100644 --- a/src/modules/evas/engines/software_x11/evas_xlib_image.c +++ b/src/modules/evas/engines/software_x11/evas_xlib_image.c @@ -58,7 +58,6 @@ _native_free_cb(void *data EINA_UNUSED, void *image) n->ns_data.x11.visual = NULL; im->native.data = NULL; - im->native.func.data = NULL; im->native.func.bind = NULL; im->native.func.unbind = NULL; im->native.func.free = NULL; @@ -103,7 +102,6 @@ evas_xlib_image_native_set(void *data, void *image, void *native) n->ns_data.x11.visual = vis; n->ns_data.x11.exim = exim; im->native.data = n; - im->native.func.data = NULL; im->native.func.bind = _native_bind_cb; im->native.func.free = _native_free_cb; diff --git a/src/modules/evas/engines/wayland_egl/evas_engine.c b/src/modules/evas/engines/wayland_egl/evas_engine.c index d6ee043133..0e27ade9fc 100644 --- a/src/modules/evas/engines/wayland_egl/evas_engine.c +++ b/src/modules/evas/engines/wayland_egl/evas_engine.c @@ -796,7 +796,7 @@ eng_output_dump(void *data) } static void -_native_cb_bind(void *data EINA_UNUSED, void *image) +_native_cb_bind(void *image) { Evas_GL_Image *img; Native *n; @@ -867,7 +867,7 @@ _native_cb_bind(void *data EINA_UNUSED, void *image) } static void -_native_cb_unbind(void *data EINA_UNUSED, void *image) +_native_cb_unbind(void *image) { Evas_GL_Image *img; Native *n; @@ -894,7 +894,7 @@ _native_cb_unbind(void *data EINA_UNUSED, void *image) } static void -_native_cb_free(void *data EINA_UNUSED, void *image) +_native_cb_free(void *image) { Evas_GL_Image *img; Native *n; @@ -952,7 +952,6 @@ _native_cb_free(void *data EINA_UNUSED, void *image) #endif } img->native.data = NULL; - img->native.func.data = NULL; img->native.func.bind = NULL; img->native.func.unbind = NULL; img->native.func.free = NULL; @@ -961,7 +960,7 @@ _native_cb_free(void *data EINA_UNUSED, void *image) } static int -_native_cb_yinvert(void *data EINA_UNUSED, void *image) +_native_cb_yinvert(void *image) { Evas_GL_Image *im = image; Native *n = im->native.data; @@ -1123,7 +1122,7 @@ eng_image_native_set(void *data, void *image, void *native) if (img->native.data) { if (img->native.func.free) - img->native.func.free(img->native.func.data, img); + img->native.func.free(img); glsym_evas_gl_common_image_native_disable(img); } @@ -1263,7 +1262,6 @@ eng_image_native_set(void *data, void *image, void *native) img->native.disp = ob->egl_disp; img->native.shared = ob->gl_context->shared; img->native.data = n; - img->native.func.data = re; img->native.func.bind = _native_cb_bind; img->native.func.unbind = _native_cb_unbind; img->native.func.free = _native_cb_free; @@ -1290,7 +1288,6 @@ eng_image_native_set(void *data, void *image, void *native) img->native.disp = ob->egl_disp; img->native.shared = ob->gl_context->shared; img->native.data = n; - img->native.func.data = re; img->native.func.bind = _native_cb_bind; img->native.func.unbind = _native_cb_unbind; img->native.func.free = _native_cb_free; @@ -1319,7 +1316,6 @@ eng_image_native_set(void *data, void *image, void *native) img->native.disp = ob->egl_disp; img->native.shared = ob->gl_context->shared; img->native.data = n; - img->native.func.data = re; img->native.func.bind = _native_cb_bind; img->native.func.unbind = _native_cb_unbind; img->native.func.free = _native_cb_free; @@ -1358,7 +1354,6 @@ eng_image_native_set(void *data, void *image, void *native) img->native.disp = ob->egl_disp; img->native.shared = ob->gl_context->shared; img->native.data = n; - img->native.func.data = re; img->native.func.bind = _native_cb_bind; img->native.func.unbind = _native_cb_unbind; img->native.func.free = _native_cb_free; diff --git a/src/modules/evas/engines/wayland_shm/evas_engine.c b/src/modules/evas/engines/wayland_shm/evas_engine.c index 0bcfcc4a50..d21e35ac30 100644 --- a/src/modules/evas/engines/wayland_shm/evas_engine.c +++ b/src/modules/evas/engines/wayland_shm/evas_engine.c @@ -331,7 +331,7 @@ eng_image_native_set(void *data EINA_UNUSED, void *image, void *native) if (im->native.data) { if (im->native.func.free) - im->native.func.free(im->native.func.data, im); + im->native.func.free(im); } #ifdef EVAS_CSERVE2