ecore_drm: Update device copy of framebuffer after page flip completes
authorDerek Foreman <derekf@osg.samsung.com>
Fri, 11 Mar 2016 00:34:19 +0000 (18:34 -0600)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 11 Mar 2016 16:53:46 +0000 (11:53 -0500)
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

index 27e4289..2ea9f42 100644 (file)
@@ -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;