}
}
+ if (!wayland_egl_surface->need_to_enqueue ||
+ !twe_surface_check_commit_needed(wayland_egl_surface->twe_surface,
+ tbm_surface)) {
+ TPL_LOG_T("WL_EGL",
+ "[ENQ_SKIP][Frontbuffer:%s] tbm_surface(%p) need not to enqueue",
+ ((surface->frontbuffer == tbm_surface) ? "ON" : "OFF"), tbm_surface);
+ TRACE_ASYNC_END((int)tbm_surface, "[DEQ]~[ENQ] BO_NAME:%d", bo_name);
+ TPL_OBJECT_UNLOCK(wayland_egl_surface);
+ return TPL_ERROR_NONE;
+ }
+
/* In frontbuffer mode, will skip tbm_surface_queue_enqueue, acquire, and
* commit if surface->frontbuffer that is already set and the tbm_surface
* client want to enqueue are the same.
* committed. Subsequence frames do not need to be committed because
* the buffer is already displayed.
*/
-
- if (!wayland_egl_surface->need_to_enqueue ||
- (surface->frontbuffer == tbm_surface &&
- !twe_surface_check_commit_needed(wayland_egl_surface->twe_surface,
- surface->frontbuffer))) {
- TPL_LOG_T("WL_EGL",
- "[ENQ_SKIP][F] Client already uses frontbuffer(%p)",
- surface->frontbuffer);
- TRACE_ASYNC_END((int)tbm_surface, "[DEQ]~[ENQ] BO_NAME:%d", bo_name);
- TPL_OBJECT_UNLOCK(wayland_egl_surface);
- return TPL_ERROR_NONE;
- }
-
if (surface->frontbuffer == tbm_surface)
wayland_egl_surface->need_to_enqueue = TPL_FALSE;
}