From ee0508a2bb6ecf69c7920ad1b39a619e0901514a Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Thu, 10 Mar 2016 18:34:19 -0600 Subject: [PATCH] ecore_drm: Update device copy of framebuffer after page flip completes The device struct is API, so its copy of the fb pointer needs to be kept in sync with the output struct's. We do this when the flip completes to try to prevent access to an fb that's about to flip. This fixes Enlightenment screenshots. @fix --- src/lib/ecore_drm/ecore_drm_device.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/ecore_drm/ecore_drm_device.c b/src/lib/ecore_drm/ecore_drm_device.c index 27e42897f7..2ea9f42c0d 100644 --- a/src/lib/ecore_drm/ecore_drm_device.c +++ b/src/lib/ecore_drm/ecore_drm_device.c @@ -83,6 +83,8 @@ _ecore_drm_device_cb_page_flip(int fd EINA_UNUSED, unsigned int frame EINA_UNUSE ecore_drm_output_free(output); return; } + + output->dev->current = output->current; /* We were unable to queue a page on the last flip attempt, so we'll * try again now. */ next = output->next;