HomePhabricator

evas: Defer render post callbacks added during async render

Authored by ManMower on Jul 31 2018, 2:02 PM.

Description

evas: Defer render post callbacks added during async render

Summary:
To take screenshots, Enlightenment makes a new snapshot object, performs
a manual render, and uses the snapshot results.

Turns out if this happens while an async render is in progress, the
async render's completion triggers a render post callback on the snapshot
object even though it's never been involved in a render.

We need to defer new render post callbacks until any currently running
render completes, then add them during that render's post.

Fix T7156

Reviewers: devilhorns, zmike

Reviewed By: devilhorns, zmike

Subscribers: devilhorns, cedric, committers, zmike

Tags: efl

Maniphest Tasks: T7156

Differential Revision: https://phab.enlightenment.org/D6711