raster pushed a commit to branch v-1.26.0.

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

commit a9dbba3f636481c9f60b8ae88328071bfc15e2b3
Author: JunsuChoi <[email protected]>
Date:   Wed Jan 12 11:35:31 2022 +0900

    vg_common_svg: Fix when the number of polygon points is odd
    
    Summary: If the number of points is odd, an overflow occurs in array[i+1].
    
    Test Plan:
    Test Svg image
    ```
    <svg xmlns="http://www.w3.org/2000/svg"; id="svg1" viewBox="0 0 200 200">
        <title>Not enough points</title>
        <desc>Must contain at least 4 points</desc>
    
        <polygon id="polygon1" points="20 40 160 40 10" fill="none" 
stroke="red"/>
    
        <!-- image frame -->
        <rect id="frame" x="1" y="1" width="198" height="198" fill="none" 
stroke="black"/>
    </svg>
    ```
    
    Reviewers: Hermet, raster, kimcinoo
    
    Reviewed By: Hermet
    
    Subscribers: cedric, #reviewers, #committers
    
    Tags: #efl
    
    Differential Revision: https://phab.enlightenment.org/D12319
---
 src/static_libs/vg_common/vg_common_svg.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/static_libs/vg_common/vg_common_svg.c 
b/src/static_libs/vg_common/vg_common_svg.c
index d75486ed58..6efef669d6 100644
--- a/src/static_libs/vg_common/vg_common_svg.c
+++ b/src/static_libs/vg_common/vg_common_svg.c
@@ -832,7 +832,7 @@ _add_polyline(Efl_VG *vg, double *array, int size, 
Eina_Bool polygon)
    if (size < 2) return;
 
    efl_gfx_path_append_move_to(vg, array[0], array[1]);
-   for (i=2; i < size; i+=2)
+   for (i = 2; i < size - 1; i += 2)
      efl_gfx_path_append_line_to(vg, array[i], array[i+1]);
 
    if (polygon)

-- 


Reply via email to