summaryrefslogtreecommitdiff
path: root/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c')
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c b/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c
index a2ddb9119a..2be8ded399 100644
--- a/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c
+++ b/src/lib/ecore_wl2/ecore_wl2_surface_module_dmabuf.c
@@ -193,7 +193,14 @@ _evas_dmabuf_surface_flush(Ecore_Wl2_Surface *surface EINA_UNUSED, void *priv_da
193 p = priv_data; 193 p = priv_data;
194 194
195 EINA_LIST_FREE(p->buffers, b) 195 EINA_LIST_FREE(p->buffers, b)
196 ecore_wl2_buffer_destroy(b); 196 {
197 if (!ecore_wl2_buffer_busy_get(b))
198 {
199 if (p->current == b)
200 p->current = NULL;
201 ecore_wl2_buffer_destroy(b);
202 }
203 }
197} 204}
198 205
199static Ecore_Wl2_Surface_Interface dmabuf_smanager = 206static Ecore_Wl2_Surface_Interface dmabuf_smanager =