/* local variables */
static Eina_Bool initted = EINA_FALSE;
static int gl_wins = 0;
+static Eina_Bool useHash = EINA_FALSE;
/* local function prototype types */
typedef void (*_eng_fn)(void);
TRACE_EFL_BEGIN(SETUP);
+ /* check use hash on native surface set */
+ s = getenv("EVAS_USE_HASH_NATIVE_SURFACE");
+ if ((s) && (atoi(s)))
+ {
+ useHash = EINA_TRUE;
+ }
+
s = getenv("EVAS_GL_SWAP_MODE");
if (s)
{
EVAS_GL_WAYLAND_Y_INVERTED_WL,
&yinvert) == EGL_FALSE)
yinvert = 1;
- eina_hash_add(ob->gl_context->shared->native_wl_hash,
+ if (useHash)
+ eina_hash_add(ob->gl_context->shared->native_wl_hash,
&wlid, img);
n->ns_data.wl_surface.wl_buf = wl_buf;
if ((n = calloc(1, sizeof(Native))))
{
memcpy(&(n->ns), ns, sizeof(Evas_Native_Surface));
- eina_hash_add(ob->gl_context->shared->native_tex_hash,
+ if (useHash)
+ eina_hash_add(ob->gl_context->shared->native_tex_hash,
&texid, img);
n->ns_data.opengl.surface = 0;
{
memcpy(&(n->ns), ns, sizeof(Evas_Native_Surface));
- eina_hash_add(ob->gl_context->shared->native_evasgl_hash, &buffer, img);
+ if (useHash)
+ eina_hash_add(ob->gl_context->shared->native_evasgl_hash, &buffer, img);
n->ns_data.evasgl.surface = ns->data.evasgl.surface;
n = calloc(1, sizeof(Native));
if (n)
{
- eina_hash_add(eng_get_ob(re)->gl_context->shared->native_tbm_hash, &buffer, img);
+ if (useHash)
+ eina_hash_add(eng_get_ob(re)->gl_context->shared->native_tbm_hash, &buffer, img);
memcpy(&(n->ns), ns, sizeof(Evas_Native_Surface));
n->ns_data.tbm.buffer = buffer;