hermet pushed a commit to branch master.

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

commit f90c8b8910bd5c5303db143c9926a208a6bd114b
Author: Hermet Park <[email protected]>
Date:   Wed Sep 4 19:56:57 2019 +0900

    ector: fix a wrong target buffer size.
    
    the target buffer is allocated by backend engine,
    The buffer size must be specified with the stride, not the width.
    It's real dimension can be different with the our request.
---
 src/lib/ector/software/ector_software_rasterizer.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/ector/software/ector_software_rasterizer.c 
b/src/lib/ector/software/ector_software_rasterizer.c
index 62c3eac723..399b4490a2 100644
--- a/src/lib/ector/software/ector_software_rasterizer.c
+++ b/src/lib/ector/software/ector_software_rasterizer.c
@@ -316,7 +316,7 @@ _blend_gradient_alpha(int count, const SW_FT_Span *spans, 
void *user_data)
 
    while (count--)
      {
-        uint32_t *target = buffer + ((sd->raster_buffer->generic->w * 
spans->y) + spans->x);
+        uint32_t *target = buffer + ((pix_stride * spans->y) + spans->x);
         uint32_t *mtarget = mbuffer + ((mask->generic->w * spans->y) + 
spans->x);
         int length = spans->len;
 
@@ -364,7 +364,7 @@ _blend_gradient_alpha_inv(int count, const SW_FT_Span 
*spans, void *user_data)
 
    while (count--)
      {
-        uint32_t *target = buffer + ((sd->raster_buffer->generic->w * 
spans->y) + spans->x);
+        uint32_t *target = buffer + ((pix_stride * spans->y) + spans->x);
         uint32_t *mtarget = mbuffer + ((mask->generic->w * spans->y) + 
spans->x);
         int length = spans->len;
 

-- 


Reply via email to