cedric pushed a commit to branch master.

commit 7e77fac0a38ce7e3e6bb3247d76b4f7316c80920
Author: Cedric Bail <[email protected]>
Date:   Thu Apr 11 09:58:09 2013 +0900

    evas: reduce unecessary write.
---
 src/lib/evas/include/evas_inline.x | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/lib/evas/include/evas_inline.x 
b/src/lib/evas/include/evas_inline.x
index 7632ff7..3229b00 100644
--- a/src/lib/evas/include/evas_inline.x
+++ b/src/lib/evas/include/evas_inline.x
@@ -287,6 +287,18 @@ evas_object_clip_recalc(Evas_Object_Protected_Data *obj)
    if ((ca == 0 && obj->cur->render_op == EVAS_RENDER_BLEND) ||
        (cw <= 0) || (ch <= 0)) cvis = EINA_FALSE;
 
+   if (obj->cur->cache.clip.x == cx &&
+       obj->cur->cache.clip.y == cy &&
+       obj->cur->cache.clip.w == cw &&
+       obj->cur->cache.clip.h == ch &&
+       obj->cur->cache.clip.visible == cvis &&
+       obj->cur->cache.clip.r == cr &&
+       obj->cur->cache.clip.g == cg &&
+       obj->cur->cache.clip.b == cb &&
+       obj->cur->cache.clip.a == ca &&
+       obj->cur->cache.clip.dirty == EINA_FALSE)
+     return ;
+
    EINA_COW_STATE_WRITE_BEGIN(obj, state_write, cur)
      {
         state_write->cache.clip.x = cx;

-- 

------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter

Reply via email to