tpl_gmutex_lock(&wl_egl_buffer->mutex);
wl_egl_buffer->status = WAITING_VBLANK;
+
+ TPL_DEBUG("[FINALIZE] wl_egl_buffer(%p) wait_source(%p) fence_fd(%d)",
+ wl_egl_buffer, wl_egl_buffer->waiting_source,
+ wl_egl_buffer->acquire_fence_fd);
+
+ close(wl_egl_buffer->acquire_fence_fd);
+ wl_egl_buffer->acquire_fence_fd = -1;
+ wl_egl_buffer->waiting_source = NULL;
+
tpl_gmutex_unlock(&wl_egl_buffer->mutex);
tpl_gmutex_lock(&wl_egl_surface->surf_mutex);
static void
__thread_func_waiting_source_finalize(tpl_gsource *gsource)
{
- tpl_wl_egl_buffer_t *wl_egl_buffer =
- (tpl_wl_egl_buffer_t *)tpl_gsource_get_data(gsource);
-
- TPL_DEBUG("[FINALIZE] wl_egl_buffer(%p) wait_source(%p) fence_fd(%d)",
- wl_egl_buffer, wl_egl_buffer->waiting_source,
- wl_egl_buffer->acquire_fence_fd);
-
- close(wl_egl_buffer->acquire_fence_fd);
- wl_egl_buffer->acquire_fence_fd = -1;
- wl_egl_buffer->waiting_source = NULL;
+ TPL_IGNORE(gsource);
}
static tpl_gsource_functions buffer_funcs = {