discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=1a651f23af0ff96cacd33dc6ea51e40ce8de7235

commit 1a651f23af0ff96cacd33dc6ea51e40ce8de7235
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Fri Sep 1 13:40:12 2017 -0400

    return during client pixel callback if pixmap is dirty and no updates exist
    
    this probably indicates a client update is needed in order to complete the
    render, so the existing data should be reused since nothing will render now
---
 src/bin/e_comp_object.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 22cbb279c..4d520332f 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -1000,7 +1000,11 @@ _e_comp_object_pixels_get(void *data, Evas_Object *obj)
 
    /* queue another render if client is still dirty; cannot refresh here. */
    if (e_pixmap_dirty_get(ec->pixmap) && e_pixmap_size_get(ec->pixmap, &pw, 
&ph))
-     e_comp_object_damage(ec->frame, 0, 0, ec->w, ec->h);
+     {
+        e_comp_object_damage(ec->frame, 0, 0, ec->w, ec->h);
+        /* if updates for existing pixmap don't exist then avoid unsetting 
existing image */
+        if ((!cw->pending_updates) || eina_tiler_empty(cw->pending_updates)) 
return;
+     }
 
    if (cw->native)
      {

-- 


Reply via email to