From bc8b11bd7853b349e311a4b05db76d3525c85189 Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Fri, 16 Jun 2017 16:15:57 -0500 Subject: [PATCH] ecore_drm2: Track whether an Ecore_Drm2_Plane has ever been on scanout --- src/lib/ecore_drm2/ecore_drm2_fb.c | 6 +++++- src/lib/ecore_drm2/ecore_drm2_private.h | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/lib/ecore_drm2/ecore_drm2_fb.c b/src/lib/ecore_drm2/ecore_drm2_fb.c index ddd7c3e5dc..28154e567e 100644 --- a/src/lib/ecore_drm2/ecore_drm2_fb.c +++ b/src/lib/ecore_drm2/ecore_drm2_fb.c @@ -284,7 +284,11 @@ ecore_drm2_fb_flip_complete(Ecore_Drm2_Output *output) EINA_LIST_FOREACH_SAFE(output->planes, l, ll, plane) { - if (!plane->dead) continue; + if (!plane->dead) + { + plane->scanout = EINA_TRUE; + continue; + } output->planes = eina_list_remove_list(output->planes, l); free(plane); } diff --git a/src/lib/ecore_drm2/ecore_drm2_private.h b/src/lib/ecore_drm2/ecore_drm2_private.h index 730c7b52ce..d387e90f42 100644 --- a/src/lib/ecore_drm2/ecore_drm2_private.h +++ b/src/lib/ecore_drm2/ecore_drm2_private.h @@ -176,6 +176,7 @@ struct _Ecore_Drm2_Plane Ecore_Drm2_Output *output; Ecore_Drm2_Fb *fb; Eina_Bool dead; + Eina_Bool scanout; }; struct _Ecore_Drm2_Output_Mode