cedric pushed a commit to branch master.

commit a07fab03e82ad40e3d54557e3961370c6cb33945
Author: Cedric Bail <[email protected]>
Date:   Wed Aug 7 18:40:42 2013 +0900

    evas: CRIT when someone change object geometry during pixels get callback.
---
 src/lib/evas/canvas/evas_object_image.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/lib/evas/canvas/evas_object_image.c 
b/src/lib/evas/canvas/evas_object_image.c
index 4af6bf9..df57721 100644
--- a/src/lib/evas/canvas/evas_object_image.c
+++ b/src/lib/evas/canvas/evas_object_image.c
@@ -3646,6 +3646,8 @@ evas_process_dirty_pixels(Evas_Object *eo_obj, 
Evas_Object_Protected_Data *obj,
      {
         if (o->pixels->func.get_pixels)
           {
+             Evas_Coord x, y, w, h;
+
              if (obj->layer->evas->engine.func->image_native_get)
                {
                   Evas_Native_Surface *ns;
@@ -3690,9 +3692,20 @@ evas_process_dirty_pixels(Evas_Object *eo_obj, 
Evas_Object_Protected_Data *obj,
                     }
                }
 
+             x = obj->cur->geometry.x;
+             y = obj->cur->geometry.y;
+             w = obj->cur->geometry.w;
+             h = obj->cur->geometry.h;             
+
              if (!o->direct_render)
                o->pixels->func.get_pixels(o->pixels->func.get_pixels_data, 
eo_obj);
 
+             if (!(obj->cur->geometry.x == x &&
+                   obj->cur->geometry.y == y &&
+                   obj->cur->geometry.w == w &&
+                   obj->cur->geometry.h == h))
+               CRIT("Evas_Object_Image geometry did change during pixels get 
callback !");
+
              o->engine_data = obj->layer->evas->engine.func->image_dirty_region
                (obj->layer->evas->engine.data.output, o->engine_data,
                 0, 0, o->cur->image.w, o->cur->image.h);

-- 

------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead. 
Download for free and get started troubleshooting in minutes. 
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk

Reply via email to