tbm_surface_internal_get_user_data(tbm_surface, KEY_BUFFER_INFO,
(void **)&buf_info);
- g_mutex_lock(&surf_source->surf_mutex);
if (!disp_source->is_vulkan_dpy) { /* wayland_egl */
if (surf_source->vblank_done) {
TPL_LOG_T(BACKEND, "[ACQ] tbm_surface(%p) bo(%d)",
break;
}
}
- g_mutex_unlock(&surf_source->surf_mutex);
}
}
TRACE_ASYNC_END((int)wait_source, "FENCE WAIT fd(%d)", wait_source->fence_fd);
+ g_mutex_lock(&surf_source->surf_mutex);
/* Since this source is going to be removed, acquire_and_commit must be
* executed even in a situation other than G_IO_IN.
* Nevertheless, there may be room for improvement. */
_twe_thread_wl_surface_acquire_and_commit(surf_source);
tbm_surface_internal_unref(tbm_surface);
- g_mutex_lock(&surf_source->surf_mutex);
__tpl_list_remove_data(surf_source->fence_waiting_sources,
(void *)wait_source, TPL_FIRST, NULL);
g_mutex_unlock(&surf_source->surf_mutex);