jpeg pushed a commit to branch master.

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

commit b439b8c9be047003189529279d35e8dd1e1d8edb
Author: Jean-Philippe Andre <jp.an...@samsung.com>
Date:   Thu Apr 3 18:39:53 2014 +0900

    Evas: Fix TGV loader to properly copy ETC1 data
    
    There was some invalid arithmetics with the buffer offset.
---
 src/modules/evas/loaders/tgv/evas_image_load_tgv.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/modules/evas/loaders/tgv/evas_image_load_tgv.c 
b/src/modules/evas/loaders/tgv/evas_image_load_tgv.c
index 62df415..49bbfc3 100644
--- a/src/modules/evas/loaders/tgv/evas_image_load_tgv.c
+++ b/src/modules/evas/loaders/tgv/evas_image_load_tgv.c
@@ -220,6 +220,7 @@ evas_image_load_file_data_tgv(void *loader_data,
    Evas_Loader_Internal *loader = loader_data;
    const char *m;
    unsigned int *p = pixels;
+   unsigned char *p_etc1 = pixels;
    char *buffer;
    Eina_Rectangle master;
    unsigned int block_length;
@@ -335,8 +336,8 @@ evas_image_load_file_data_tgv(void *loader_data,
                          }
                        break;
                     case EVAS_COLORSPACE_ETC1:
-                       memcpy(&p[current_etc.x +
-                                 current_etc.y * etc1_width],
+                       memcpy(&p_etc1[(current_etc.x / 4) * 8 +
+                                      (current_etc.y / 4) * etc1_width],
                               it, 8);
                        break;
                     default:

-- 


Reply via email to