if (explicit_sync_surface->pending_acquire_fence_fd != -1)
_e_explicit_sync_fd_clear(&explicit_sync_surface->pending_acquire_fence_fd);
- if (explicit_sync_surface->acquire_fence_fd != -1)
- _e_explicit_sync_ec_acquire_fd_clear(explicit_sync_surface->ec, &explicit_sync_surface->acquire_fence_fd);
-
if (explicit_sync_surface->ec)
{
+ if (explicit_sync_surface->acquire_fence_fd != -1)
+ _e_explicit_sync_ec_acquire_fd_clear(explicit_sync_surface->ec, &explicit_sync_surface->acquire_fence_fd);
+
+ e_client_explicit_sync_set(explicit_sync_surface->ec, EINA_FALSE);
e_object_delfn_del(E_OBJECT(explicit_sync_surface->ec), explicit_sync_surface->ec_delfn);
explicit_sync_surface->ec_delfn = NULL;
explicit_sync_surface->ec = NULL;
}
+ else
+ {
+ if (explicit_sync_surface->acquire_fence_fd != -1)
+ _e_explicit_sync_fd_clear(&explicit_sync_surface->acquire_fence_fd);
+ }
E_FREE(explicit_sync_surface);
}