efl/cache: Set loaded flag properly with loaded pixels
authorPaulo Alcantara <pcacjr@profusion.mobi>
Wed, 9 Jan 2013 21:36:03 +0000 (21:36 +0000)
committerUlisses Furquim <ulisses@profusion.mobi>
Wed, 9 Jan 2013 21:36:03 +0000 (21:36 +0000)
Patch by: Paulo Alcantara <pcacjr@profusion.mobi>

SVN revision: 82481

src/lib/evas/cache/evas_cache_image.c
src/lib/evas/cache2/evas_cache2.c

index 83d8370..8a0932f 100644 (file)
@@ -903,6 +903,7 @@ evas_cache_image_data(Evas_Cache_Image *cache, unsigned int w, unsigned int h, D
         return NULL;
      }
    im->references = 1;
+   im->flags.loaded = EINA_TRUE;
    if (cache->func.debug) cache->func.debug("data", im);
    return im;
 }
@@ -945,6 +946,7 @@ evas_cache_image_size_set(Image_Entry *im, unsigned int w, unsigned int h)
    error = cache->func.size_set(im2, im, w, h);
    if (error != 0) goto on_error;
    im2->references = 1;
+   im2->flags.loaded = EINA_TRUE;
    evas_cache_image_drop(im);
    if (cache->func.debug) cache->func.debug("size_set", im2);
    return im2;
index 46cca8e..3eaf0b3 100644 (file)
@@ -419,13 +419,13 @@ evas_cache2_image_data(Evas_Cache2 *cache, unsigned int w, unsigned int h, DATA3
    im->w = w;
    im->h = h;
    im->flags.alpha = alpha;
-   im->flags.loaded = 1;
    if (cache->func.data(im, w, h, image_data, alpha, cspace) != 0)
      {
         _evas_cache_image_entry_delete(cache, im);
         return NULL;
      }
    im->references = 1;
+   im->flags.loaded = EINA_TRUE;
    if (cache->func.debug) cache->func.debug("data", im);
    return im;
 }
@@ -470,6 +470,7 @@ evas_cache2_image_size_set(Image_Entry *im, unsigned int w, unsigned h)
    if (error != 0) goto on_error;
 
    im2->references = 1;
+   im2->flags.loaded = EINA_TRUE;
 
    evas_cache2_image_close(im);
    return im2;