Gradient get float/double fix 37/250337/3
authorMichal Maciola <m.maciola@samsung.com>
Wed, 23 Dec 2020 15:24:14 +0000 (16:24 +0100)
committerHermet Park <chuneon.park@samsung.com>
Mon, 28 Dec 2020 05:40:44 +0000 (05:40 +0000)
Patch fixes types convertion problems for evas_vg_gradient_radial_center_get() and other functions

Change-Id: I18a2a639aaca2cac90c53bcca904b91f02a2f587

src/lib/evas/canvas/efl_canvas_vg_gradient_linear.c
src/lib/evas/canvas/efl_canvas_vg_gradient_radial.c

index 3242a23..72adb64 100644 (file)
@@ -193,13 +193,13 @@ evas_vg_gradient_linear_start_set(Evas_Vg_Gradient_Linear *obj, double x, double
 {
 #ifdef HAVE_THORVG
    Efl_Canvas_Vg_Gradient_Data *gd = NULL;
-   float x1 = 0.0, x2 = 0.0, y1 = 0.0, y2 = 0.0;
+   float x2 = 0.f, y2 = 0.f;
 
    if (!obj) return;
    gd = efl_data_scope_get(obj, EFL_CANVAS_VG_GRADIENT_CLASS);
    if (!gd || !gd->gradient) return;
 
-   tvg_linear_gradient_get(gd->gradient, &x1, &y1, &x2, &y2);
+   tvg_linear_gradient_get(gd->gradient, NULL, NULL, &x2, &y2);
    tvg_linear_gradient_set(gd->gradient, x, y, x2, y2);
 #else
    efl_gfx_gradient_linear_start_set(obj, x, y);
@@ -211,7 +211,7 @@ evas_vg_gradient_linear_start_get(Evas_Vg_Gradient_Linear *obj, double *x, doubl
 {
 #ifdef HAVE_THORVG
    Efl_Canvas_Vg_Gradient_Data *gd = NULL;
-   float x1 = 0.0, y1 = 0.0;
+   float x1 = 0.f, y1 = 0.f;
 
    if (!obj) return;
    gd = efl_data_scope_get(obj, EFL_CANVAS_VG_GRADIENT_CLASS);
@@ -231,13 +231,13 @@ evas_vg_gradient_linear_end_set(Evas_Vg_Gradient_Linear *obj, double x, double y
 {
 #ifdef HAVE_THORVG
    Efl_Canvas_Vg_Gradient_Data *gd = NULL;
-   float x1 = 0.0, x2 = 0.0, y1 = 0.0, y2 = 0.0;
+   float x1 = 0.f, y1 = 0.f;
 
    if (!obj) return;
    gd = efl_data_scope_get(obj, EFL_CANVAS_VG_GRADIENT_CLASS);
    if (!gd || !gd->gradient) return;
 
-   tvg_linear_gradient_get(gd->gradient, &x1, &y1, &x2, &y2);
+   tvg_linear_gradient_get(gd->gradient, &x1, &y1, NULL, NULL);
    tvg_linear_gradient_set(gd->gradient, x1, y1, x, y);
 #else
    efl_gfx_gradient_linear_end_set(obj, x, y);
@@ -249,7 +249,7 @@ evas_vg_gradient_linear_end_get(Evas_Vg_Gradient_Linear *obj, double *x, double
 {
 #ifdef HAVE_THORVG
    Efl_Canvas_Vg_Gradient_Data *gd = NULL;
-   float x2 = 0.0, y2 = 0.0;
+   float x2 = 0.f, y2 = 0.f;
 
    if (!obj) return;
    gd = efl_data_scope_get(obj, EFL_CANVAS_VG_GRADIENT_CLASS);
index 1231b55..b5f589f 100644 (file)
@@ -239,7 +239,11 @@ evas_vg_gradient_radial_center_get(Evas_Vg_Gradient_Radial *obj, double *x, doub
    gd = efl_data_scope_get(obj, EFL_CANVAS_VG_GRADIENT_CLASS);
    if (!gd || !gd->gradient) return;
 
-   tvg_radial_gradient_get(gd->gradient, (float*)x, (float*)y, NULL);
+   float tx = 0.f, ty = 0.f;
+   tvg_radial_gradient_get(gd->gradient, &tx, &ty, NULL);
+
+   if (x) *x = tx;
+   if (y) *y = ty;
 #else
    efl_gfx_gradient_radial_center_get(obj, x, y);
 #endif
@@ -297,4 +301,4 @@ evas_vg_gradient_radial_add(Evas_Vg_Container *parent)
    return efl_add(EFL_CANVAS_VG_GRADIENT_RADIAL_CLASS, parent);
 }
 
-#include "efl_canvas_vg_gradient_radial.eo.c"
+#include "efl_canvas_vg_gradient_radial.eo.c"
\ No newline at end of file