cedric pushed a commit to branch master.

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

commit c179335b1f7667016839848d52713d5dfff2a8aa
Author: Cedric Bail <cedric.b...@samsung.com>
Date:   Mon Nov 4 12:47:48 2013 +0900

    evas: update use of eina_cow_free for latest change.
---
 src/lib/evas/canvas/evas_object_image.c | 13 +++++--------
 src/lib/evas/canvas/evas_object_main.c  |  8 ++++----
 2 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/src/lib/evas/canvas/evas_object_image.c 
b/src/lib/evas/canvas/evas_object_image.c
index 312b5c6..b508074 100644
--- a/src/lib/evas/canvas/evas_object_image.c
+++ b/src/lib/evas/canvas/evas_object_image.c
@@ -3609,14 +3609,11 @@ _evas_object_image_free(Evas_Object *obj)
 
    o = eo_data_scope_get(obj, MY_CLASS);
 
-   eina_cow_free(evas_object_image_load_opts_cow, o->load_opts);
-   o->load_opts = &default_load_opts;
-   eina_cow_free(evas_object_image_pixels_cow, o->pixels);
-   o->pixels = &default_pixels;
-   eina_cow_free(evas_object_image_state_cow, o->cur);
-   o->cur = &default_state;
-   eina_cow_free(evas_object_image_state_cow, o->prev);
-   o->prev = &default_state;
+   // eina_cow_free reset the pointer to the default read only state
+   eina_cow_free(evas_object_image_load_opts_cow, (const Eina_Cow_Data**) 
&o->load_opts);
+   eina_cow_free(evas_object_image_pixels_cow, (const Eina_Cow_Data**) 
&o->pixels);
+   eina_cow_free(evas_object_image_state_cow, (const Eina_Cow_Data**) &o->cur);
+   eina_cow_free(evas_object_image_state_cow, (const Eina_Cow_Data**) 
&o->prev);
 }
 
 static void
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index 27fc7ad..fa294d8 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -190,10 +190,10 @@ evas_object_free(Evas_Object *eo_obj, int clean_layer)
      {
        EVAS_MEMPOOL_FREE(_mp_sh, obj->size_hints);
      }
-   eina_cow_free(evas_object_proxy_cow, obj->proxy);
-   eina_cow_free(evas_object_map_cow, obj->map);
-   eina_cow_free(evas_object_state_cow, obj->cur);
-   eina_cow_free(evas_object_state_cow, obj->prev);
+   eina_cow_free(evas_object_proxy_cow, (const Eina_Cow_Data**) &obj->proxy);
+   eina_cow_free(evas_object_map_cow, (const Eina_Cow_Data**) &obj->map);
+   eina_cow_free(evas_object_state_cow, (const Eina_Cow_Data**) &obj->cur);
+   eina_cow_free(evas_object_state_cow, (const Eina_Cow_Data**) &obj->prev);
    eo_data_unref(eo_obj, obj->private_data);
    obj->private_data = NULL;
    eo_manual_free(eo_obj);

-- 


Reply via email to