From dd301a71effb57c7828f8a10e6e10b30a3631cd8 Mon Sep 17 00:00:00 2001 From: "jinbong, Lee" Date: Mon, 18 Sep 2023 15:13:55 +0900 Subject: [PATCH] protect wl_egl_buffer->wl_buffer with mutex_lock - wl_egl_buffer->wl_buffer is must protected when call wl_egl_display && wl_egl_display->wl_tbm_client Change-Id: I223f1521b1f412914194226ce69a996fc4ef91db --- src/tpl_wl_egl_thread.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/tpl_wl_egl_thread.c b/src/tpl_wl_egl_thread.c index 365fead..c927f6e 100755 --- a/src/tpl_wl_egl_thread.c +++ b/src/tpl_wl_egl_thread.c @@ -3685,17 +3685,20 @@ __cb_wl_egl_buffer_free(tpl_wl_egl_buffer_t *wl_egl_buffer) tpl_gmutex_unlock(&wl_egl_surface->vblank->mutex); } - if (wl_egl_display) { + if (wl_egl_display) + wl_display_flush(wl_egl_display->wl_display); + + tpl_gmutex_lock(&wl_egl_buffer->mutex); + + if (wl_egl_display && wl_egl_display->wl_tbm_client) { if (wl_egl_buffer->wl_buffer) { wayland_tbm_client_destroy_buffer(wl_egl_display->wl_tbm_client, (void *)wl_egl_buffer->wl_buffer); wl_egl_buffer->wl_buffer = NULL; } - - wl_display_flush(wl_egl_display->wl_display); } - tpl_gmutex_lock(&wl_egl_buffer->mutex); + #if TIZEN_FEATURE_ENABLE if (wl_egl_buffer->buffer_release) { zwp_linux_buffer_release_v1_destroy(wl_egl_buffer->buffer_release); -- 2.7.4