Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/lib/canvas


Modified Files:
        evas_object_image.c 


Log Message:


dont wipe filename if getting pixels for reading :)

===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/evas/src/lib/canvas/evas_object_image.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -3 -r1.17 -r1.18
--- evas_object_image.c 21 Sep 2004 03:15:42 -0000      1.17
+++ evas_object_image.c 22 Sep 2004 04:54:39 -0000      1.18
@@ -33,6 +33,7 @@
    char              changed : 1;
    char              dirty_pixels : 1;
    
+   int               pixels_checked_out;
    int               load_error;
    Evas_List        *pixel_updates;
    
@@ -530,9 +531,11 @@
      o->engine_data = 
obj->layer->evas->engine.func->image_alpha_set(obj->layer->evas->engine.data.output,
                                                                     o->engine_data,
                                                                     o->cur.has_alpha);
+   if (o->pixels_checked_out > 0) o->pixels_checked_out--;
    if (p_data != o->engine_data)
      {
        EVAS_OBJECT_IMAGE_FREE_FILE_AND_KEY(o);
+       o->pixels_checked_out = 0;
      }
    o->changed = 1;
    evas_object_change(obj);   
@@ -563,7 +566,11 @@
                                                                  o->engine_data,
                                                                  for_writing, 
                                                                  &data);
-   EVAS_OBJECT_IMAGE_FREE_FILE_AND_KEY(o);
+   o->pixels_checked_out++;
+   if (for_writing)
+     {
+       EVAS_OBJECT_IMAGE_FREE_FILE_AND_KEY(o);
+     }
    
    return data;
 }
@@ -600,6 +607,7 @@
      o->engine_data = 
obj->layer->evas->engine.func->image_alpha_set(obj->layer->evas->engine.data.output,
                                                                     o->engine_data,
                                                                     o->cur.has_alpha);
+   o->pixels_checked_out = 0;
    EVAS_OBJECT_IMAGE_FREE_FILE_AND_KEY(o);
 }
 
@@ -1038,7 +1046,8 @@
    
    o = (Evas_Object_Image *)(obj->object_data);
    
-   if (!o->cur.file) return;
+   if ((!o->cur.file) || 
+       (o->pixels_checked_out > 0)) return;
    if (o->engine_data)
      o->engine_data = 
obj->layer->evas->engine.func->image_dirty_region(obj->layer->evas->engine.data.output,
                                                                        o->engine_data,




-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to