discomfitor pushed a commit to branch master.

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

commit bc59464f99931ccede6e3739e3f6b062580e08ae
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Mon Feb 2 16:45:18 2015 -0500

    make wl clients use post render canvas cb to clear buffers
---
 src/bin/e_comp_wl.c | 6 +++++-
 src/bin/e_pixmap.c  | 4 ++--
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 88e7e4c..bfc838c 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -2580,7 +2580,11 @@ e_comp_wl_surface_commit(E_Client *ec)
    e_pixmap_dirty(ep);
 
    /* refresh pixmap */
-   e_pixmap_refresh(ep);
+   if (e_pixmap_refresh(ep))
+     {
+        e_comp->post_updates = eina_list_append(e_comp->post_updates, ec);
+        e_object_ref(E_OBJECT(ec));
+     }
 
    /* check for any pending attachments */
    if (ec->comp_data->pending.new_attach)
diff --git a/src/bin/e_pixmap.c b/src/bin/e_pixmap.c
index 9382b58..fec0564 100644
--- a/src/bin/e_pixmap.c
+++ b/src/bin/e_pixmap.c
@@ -464,10 +464,9 @@ e_pixmap_refresh(E_Pixmap *cp)
              if (success)
                {
                   /* if (cp->resource) _e_pixmap_resource_free(cp->resource); 
*/
-                  e_pixmap_image_clear(cp, EINA_TRUE);
+                  e_pixmap_image_clear(cp, EINA_FALSE);
                   cp->resource = res;
                   _e_pixmap_update_wl(cp);
-                  e_pixmap_image_clear(cp, EINA_FALSE);
                }
              else
                {
@@ -683,6 +682,7 @@ e_pixmap_image_clear(E_Pixmap *cp, Eina_Bool cache)
                {
                   cp->resource_cache = 
                     eina_list_append(cp->resource_cache, cp->resource);
+                  cp->resource = NULL;
                }
           }
 #endif

-- 


Reply via email to