From: Joonbum Ko Date: Fri, 14 Apr 2023 10:00:36 +0000 (+0900) Subject: wl_egl: Initialize vblank_done flag when dequeue timeout occured X-Git-Tag: accepted/tizen/unified/20230613.170805~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=657f745288a970f36027a2f8c91842687a138ec0;p=platform%2Fcore%2Fuifw%2Flibtpl-egl.git wl_egl: Initialize vblank_done flag when dequeue timeout occured - Rarely, even if client cannot receive vblank event from tdm server, timeout may occur in can_dequeue. - In this case, if wl_egl_surface->vblank_done flag is not initialized to TPL_TRUE, problem situation may occur waiting vblank without calling tdm_client_vblank_wait after force_flush(can_dequeue_timeout). Change-Id: If3f8eee13b5ae91a3728f189f53aa25720696b12 Signed-off-by: Joonbum Ko --- diff --git a/src/tpl_wl_egl_thread.c b/src/tpl_wl_egl_thread.c index 13b7404..16df22e 100755 --- a/src/tpl_wl_egl_thread.c +++ b/src/tpl_wl_egl_thread.c @@ -2604,6 +2604,8 @@ __tpl_wl_egl_surface_dequeue_buffer(tpl_surface_t *surface, uint64_t timeout_ns, tsq_err = TBM_SURFACE_QUEUE_ERROR_NONE; } + wl_egl_surface->vblank_done = TPL_TRUE; + tpl_gmutex_unlock(&wl_egl_display->wl_event_mutex); tpl_gthread_continue(wl_egl_display->thread); }