* evas: fix bug that impact performance of map.
authorcedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 24 Mar 2010 16:51:51 +0000 (16:51 +0000)
committercedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 24 Mar 2010 16:51:51 +0000 (16:51 +0000)
TODO: Got the idea that we could spread the load of image data
on all proc instead of blocking on the main thread for that.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@47430 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/modules/engines/software_generic/evas_engine.c

index ffda08f..f15dbc0 100644 (file)
@@ -816,7 +816,12 @@ eng_image_map4_draw(void *data __UNUSED__, void *context, void *surface, void *i
    else
 #ifdef BUILD_PIPE_RENDER
      if (cpunum > 1)
-       evas_common_pipe_map4_draw(im, surface, context, p, smooth, level);
+       {
+        if (im->cache_entry.space == EVAS_COLORSPACE_ARGB8888)
+          evas_cache_image_load_data(&im->cache_entry);
+        evas_common_image_colorspace_normalize(im);
+        evas_common_pipe_map4_draw(im, surface, context, p, smooth, level);
+       }
      else
 #endif
        evas_common_map4_rgba(im, surface, context, p, smooth, level);