raster pushed a commit to branch master.

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

commit 22081ada26b26e6a976b54f4e63f1ee23d46a4dd
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Thu May 9 12:29:17 2019 +0100

    much better fix to invalid uv coords with new map render code
    
    this fixes the d81d1337b087fbc23fb7439c269c1f7e34aa5fa2 fix to do it
    in the inner loop so uu and vv stay valid. still not a great fix but
    better than chashes.
---
 src/lib/evas/common/evas_map_image_internal_high.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/evas/common/evas_map_image_internal_high.c 
b/src/lib/evas/common/evas_map_image_internal_high.c
index bce8ce7f4d..30748023d9 100644
--- a/src/lib/evas/common/evas_map_image_internal_high.c
+++ b/src/lib/evas/common/evas_map_image_internal_high.c
@@ -396,9 +396,6 @@ _map_triangle_draw_linear(RGBA_Image *src, RGBA_Image *dst,
         dx = 1 - (_xa - x1);
         u = _ua + dx * _dudx;
         v = _va + dx * _dvdx;
-        // FIXME: sometimes u and v are < 0 - don'tc crash
-        if (u < 0) u = 0;
-        if (v < 0) v = 0;
 
         if (col_blend)
           {
@@ -419,6 +416,9 @@ _map_triangle_draw_linear(RGBA_Image *src, RGBA_Image *dst,
           {
              uu = (int) u;
              vv = (int) v;
+             // FIXME: sometimes u and v are < 0 - don'tc crash
+             if (uu < 0) uu = 0;
+             if (vv < 0) vv = 0;
 
              //Range exception handling
              //OPTIMIZE ME, handle in advance?

-- 


Reply via email to