ecore_wl2: Handle purging flush in dmabuf module

Summary:
Allow destroying all buffers, even attached ones, in the dmabuf surface
module.
Depends on D6279

Reviewers: devilhorns, zmike

Reviewed By: zmike

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6280
This commit is contained in:
Derek Foreman 2018-06-15 13:18:39 -05:00
parent a310667bec
commit b8d6923782
1 changed files with 2 additions and 2 deletions

View File

@ -217,7 +217,7 @@ _evas_dmabuf_surface_destroy(Ecore_Wl2_Surface *s EINA_UNUSED, void *priv_data)
} }
static void static void
_evas_dmabuf_surface_flush(Ecore_Wl2_Surface *surface EINA_UNUSED, void *priv_data, Eina_Bool purge EINA_UNUSED) _evas_dmabuf_surface_flush(Ecore_Wl2_Surface *surface EINA_UNUSED, void *priv_data, Eina_Bool purge)
{ {
Ecore_Wl2_Dmabuf_Private *p; Ecore_Wl2_Dmabuf_Private *p;
Ecore_Wl2_Buffer *b; Ecore_Wl2_Buffer *b;
@ -226,7 +226,7 @@ _evas_dmabuf_surface_flush(Ecore_Wl2_Surface *surface EINA_UNUSED, void *priv_da
EINA_LIST_FREE(p->buffers, b) EINA_LIST_FREE(p->buffers, b)
{ {
if (!ecore_wl2_buffer_busy_get(b)) if (purge || !ecore_wl2_buffer_busy_get(b))
{ {
if (p->current == b) if (p->current == b)
p->current = NULL; p->current = NULL;