cedric pushed a commit to branch master.

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

commit 1ed7ebaa0b6fa0100c816fb9525484edf258d72a
Author: Cedric BAIL <ced...@osg.samsung.com>
Date:   Wed Nov 11 16:08:17 2015 -0800

    ector: do get symbol at object construction time.
    
    This make it part of the object initialization and will prevent the 
construction
    of the object if the needed cairo function are not fund. So if Ector can 
create
    the object, it can display them.
---
 src/lib/ector/cairo/ector_cairo_surface.c          | 17 ++++---
 src/lib/ector/cairo/ector_renderer_cairo_base.c    | 30 ++++++------
 .../cairo/ector_renderer_cairo_gradient_linear.c   | 32 ++++++++-----
 .../cairo/ector_renderer_cairo_gradient_linear.eo  |  1 +
 .../cairo/ector_renderer_cairo_gradient_radial.c   | 32 ++++++++-----
 .../cairo/ector_renderer_cairo_gradient_radial.eo  |  1 +
 src/lib/ector/cairo/ector_renderer_cairo_shape.c   | 55 ++++++++++------------
 7 files changed, 86 insertions(+), 82 deletions(-)

diff --git a/src/lib/ector/cairo/ector_cairo_surface.c 
b/src/lib/ector/cairo/ector_cairo_surface.c
index bd44405..c073adb 100644
--- a/src/lib/ector/cairo/ector_cairo_surface.c
+++ b/src/lib/ector/cairo/ector_cairo_surface.c
@@ -82,18 +82,13 @@ static cairo_t *(*cairo_create)(cairo_surface_t *target) = 
NULL;
 static cairo_surface_t *internal = NULL;
 
 static void
-_ector_cairo_surface_context_set(Eo *obj,
+_ector_cairo_surface_context_set(Eo *obj EINA_UNUSED,
                                  Ector_Cairo_Surface_Data *pd,
                                  cairo_t *ctx)
 {
-   USE(obj, cairo_destroy, );
-
    if (pd->cairo) cairo_destroy(pd->cairo);
    if (!ctx)
      {
-        USE(obj, cairo_image_surface_create, );
-        USE(obj, cairo_create, );
-
         if (!internal) internal = cairo_image_surface_create(0, 1, 1);
         ctx = cairo_create(internal);
      }
@@ -121,7 +116,13 @@ static Eo *
 _ector_cairo_surface_eo_base_constructor(Eo *obj,
                                          Ector_Cairo_Surface_Data *pd)
 {
-   obj = eo_do_super_ret(obj, ECTOR_CAIRO_SURFACE_CLASS, obj, 
eo_constructor());
+   USE(obj, cairo_destroy, NULL);
+   USE(obj, cairo_image_surface_create, NULL);
+   USE(obj, cairo_create, NULL);
+
+   eo_do_super(obj, ECTOR_CAIRO_SURFACE_CLASS, obj = eo_constructor());
+   if (!obj) return NULL;
+
    _cairo_count++;
 
    _ector_cairo_surface_context_set(obj, pd, NULL);
@@ -135,8 +136,6 @@ _ector_cairo_surface_eo_base_destructor(Eo *obj EINA_UNUSED,
 {
    eo_do_super(obj, ECTOR_CAIRO_SURFACE_CLASS, eo_destructor());
 
-   
-
    if (--_cairo_count) return ;
    if (_cairo_so) eina_module_free(_cairo_so);
    _cairo_so = NULL;
diff --git a/src/lib/ector/cairo/ector_renderer_cairo_base.c 
b/src/lib/ector/cairo/ector_renderer_cairo_base.c
index 420ce1f..973648b 100644
--- a/src/lib/ector/cairo/ector_renderer_cairo_base.c
+++ b/src/lib/ector/cairo/ector_renderer_cairo_base.c
@@ -107,8 +107,6 @@ 
_ector_renderer_cairo_base_ector_renderer_generic_base_prepare(Eo *obj, Ector_Re
      }
    if (pd->generic->m)
      {
-        USE(obj, cairo_matrix_init, EINA_FALSE);
-
         if (!pd->m) pd->m = malloc(sizeof (cairo_matrix_t));
         cairo_matrix_init(pd->m,
                           pd->generic->m->xx, pd->generic->m->yx,
@@ -125,7 +123,7 @@ 
_ector_renderer_cairo_base_ector_renderer_generic_base_prepare(Eo *obj, Ector_Re
 }
 
 static Eina_Bool
-_ector_renderer_cairo_base_ector_renderer_generic_base_draw(Eo *obj,
+_ector_renderer_cairo_base_ector_renderer_generic_base_draw(Eo *obj 
EINA_UNUSED,
                                                             
Ector_Renderer_Cairo_Base_Data *pd,
                                                             Ector_Rop op,
                                                             Eina_Array *clips 
EINA_UNUSED,
@@ -135,11 +133,6 @@ 
_ector_renderer_cairo_base_ector_renderer_generic_base_draw(Eo *obj,
    cairo_operator_t cop;
    double cx, cy;
 
-   USE(obj, cairo_translate, EINA_FALSE);
-   USE(obj, cairo_set_source_rgba, EINA_FALSE);
-   USE(obj, cairo_transform, EINA_FALSE);
-   USE(obj, cairo_set_operator, EINA_FALSE);
-
    switch (op)
      {
       case ECTOR_ROP_BLEND:
@@ -159,11 +152,6 @@ 
_ector_renderer_cairo_base_ector_renderer_generic_base_draw(Eo *obj,
 
    cairo_set_operator(pd->parent->cairo, cop);
 
-
-   USE(obj, cairo_new_path, EINA_FALSE);
-   USE(obj, cairo_rectangle, EINA_FALSE);
-   USE(obj, cairo_clip, EINA_FALSE);
-   USE(obj, cairo_device_to_user, EINA_FALSE);
    if (clips)
      {
         int clip_count =  eina_array_count(clips);
@@ -198,11 +186,21 @@ 
_ector_renderer_cairo_base_ector_renderer_generic_base_draw(Eo *obj,
 static Eo *
 _ector_renderer_cairo_base_eo_base_constructor(Eo *obj, 
Ector_Renderer_Cairo_Base_Data *pd EINA_UNUSED)
 {
-   obj = eo_do_super_ret(obj, ECTOR_RENDERER_CAIRO_BASE_CLASS, obj, 
eo_constructor());
+   USE(obj, cairo_matrix_init, NULL);
+   USE(obj, cairo_translate, NULL);
+   USE(obj, cairo_set_source_rgba, NULL);
+   USE(obj, cairo_transform, NULL);
+   USE(obj, cairo_set_operator, NULL);
+   USE(obj, cairo_new_path, NULL);
+   USE(obj, cairo_rectangle, NULL);
+   USE(obj, cairo_clip, NULL);
+   USE(obj, cairo_device_to_user, NULL);
+   USE(obj, cairo_matrix_init_identity, NULL);
 
-   pd->generic = eo_data_xref(obj, ECTOR_RENDERER_GENERIC_BASE_CLASS, obj);
+   eo_do_super(obj, ECTOR_RENDERER_CAIRO_BASE_CLASS, obj = eo_constructor());
+   if (!obj) return NULL;
 
-   USE(obj, cairo_matrix_init_identity, NULL);
+   pd->generic = eo_data_xref(obj, ECTOR_RENDERER_GENERIC_BASE_CLASS, obj);
 
    cairo_matrix_init_identity(&identity);
 
diff --git a/src/lib/ector/cairo/ector_renderer_cairo_gradient_linear.c 
b/src/lib/ector/cairo/ector_renderer_cairo_gradient_linear.c
index 21ba878..a105d2c 100644
--- a/src/lib/ector/cairo/ector_renderer_cairo_gradient_linear.c
+++ b/src/lib/ector/cairo/ector_renderer_cairo_gradient_linear.c
@@ -34,14 +34,11 @@ _ector_renderer_cairo_gradient_linear_prepare(Eo *obj,
 {
    cairo_pattern_t *pat;
 
-   USE(obj, cairo_pattern_create_linear, NULL);
-
    pat = cairo_pattern_create_linear(gld->start.x, gld->start.y,
                                      gld->end.x, gld->end.y);
    if (!pat) return NULL;
    _ector_renderer_cairo_gradient_prepare(obj, pat, gd, mul_col);
 
-   USE(obj, cairo_pattern_set_extend, NULL);
    cairo_pattern_set_extend(pat, _ector_cairo_extent_get(gd->s));
 
    return pat;
@@ -84,11 +81,6 @@ 
_ector_renderer_cairo_gradient_linear_ector_renderer_generic_base_draw(Eo *obj,
 
    eo_do_super(obj, ECTOR_RENDERER_CAIRO_GRADIENT_LINEAR_CLASS, 
ector_renderer_draw(op, clips, mul_col));
 
-   USE(obj, cairo_rectangle, EINA_FALSE);
-   USE(obj, cairo_fill, EINA_FALSE);
-   USE(obj, cairo_pattern_destroy, EINA_FALSE);
-   USE(obj, cairo_set_source, EINA_FALSE);
-
    cairo_rectangle(pd->parent->cairo, gld->start.x, gld->start.y,
                    gld->end.x - gld->start.x,
                    gld->end.y - gld->start.y);
@@ -115,9 +107,6 @@ 
_ector_renderer_cairo_gradient_linear_ector_renderer_cairo_base_fill(Eo *obj,
    pat = _ector_renderer_cairo_gradient_linear_prepare(obj, gld, gd, mul_col);
    if (!pat) return EINA_FALSE;
 
-   USE(obj, cairo_set_source, EINA_FALSE);
-   USE(obj, cairo_pattern_destroy, EINA_FALSE);
-
    cairo_set_source(pd->parent->cairo, pat);
    cairo_pattern_destroy(pat);
 
@@ -141,7 +130,24 @@ 
_ector_renderer_cairo_gradient_linear_ector_renderer_generic_base_bounds_get(Eo
                       gld->end.y - gld->start.x);
 }
 
-void
+static Eo_Base *
+_ector_renderer_cairo_gradient_linear_eo_base_constructor(Eo *obj,
+                                                          
Ector_Renderer_Cairo_Gradient_Linear_Data *pd EINA_UNUSED)
+{
+   USE(obj, cairo_set_source, NULL);
+   USE(obj, cairo_pattern_destroy, NULL);
+   USE(obj, cairo_rectangle, NULL);
+   USE(obj, cairo_fill, NULL);
+   USE(obj, cairo_pattern_destroy, NULL);
+   USE(obj, cairo_set_source, NULL);
+   USE(obj, cairo_pattern_set_extend, NULL);
+   USE(obj, cairo_pattern_create_linear, NULL);
+
+   eo_do_super(obj, ECTOR_RENDERER_CAIRO_GRADIENT_LINEAR_CLASS, obj = 
eo_constructor());
+   return obj;
+}
+
+static void
 _ector_renderer_cairo_gradient_linear_eo_base_destructor(Eo *obj,
                                                          
Ector_Renderer_Cairo_Gradient_Linear_Data *pd)
 {
@@ -153,7 +159,7 @@ _ector_renderer_cairo_gradient_linear_eo_base_destructor(Eo 
*obj,
    eo_do_super(obj, ECTOR_RENDERER_CAIRO_GRADIENT_LINEAR_CLASS, 
eo_destructor());
 }
 
-void
+static void
 _ector_renderer_cairo_gradient_linear_efl_gfx_gradient_base_stop_set(Eo *obj,
                                                                      
Ector_Renderer_Cairo_Gradient_Linear_Data *pd EINA_UNUSED,
                                                                      const 
Efl_Gfx_Gradient_Stop *colors,
diff --git a/src/lib/ector/cairo/ector_renderer_cairo_gradient_linear.eo 
b/src/lib/ector/cairo/ector_renderer_cairo_gradient_linear.eo
index 2085f69..308cc29 100644
--- a/src/lib/ector/cairo/ector_renderer_cairo_gradient_linear.eo
+++ b/src/lib/ector/cairo/ector_renderer_cairo_gradient_linear.eo
@@ -8,6 +8,7 @@ class Ector.Renderer.Cairo.Gradient_Linear 
(Ector.Renderer.Cairo.Base, Ector.Ren
       Ector.Renderer.Generic.Base.bounds_get;
       Ector.Renderer.Generic.Base.crc.get;
       Ector.Renderer.Cairo.Base.fill;
+      Eo.Base.constructor;
       Eo.Base.destructor;
       Efl.Gfx.Gradient.Base.stop.set;
    }
diff --git a/src/lib/ector/cairo/ector_renderer_cairo_gradient_radial.c 
b/src/lib/ector/cairo/ector_renderer_cairo_gradient_radial.c
index 4f8754f..bd89e15 100644
--- a/src/lib/ector/cairo/ector_renderer_cairo_gradient_radial.c
+++ b/src/lib/ector/cairo/ector_renderer_cairo_gradient_radial.c
@@ -56,15 +56,12 @@ _ector_renderer_cairo_gradient_radial_prepare(Eo *obj,
 {
    cairo_pattern_t *pat;
 
-   USE(obj, cairo_pattern_create_radial, NULL);
-
    pat = cairo_pattern_create_radial(grd->focal.x, grd->focal.y, 0,
                                      grd->radial.x, grd->radial.y, 
grd->radius);
    if (!pat) return NULL;
 
    _ector_renderer_cairo_gradient_prepare(obj, pat, gd, mul_col);
 
-   USE(obj, cairo_pattern_set_extend, NULL);
    cairo_pattern_set_extend(pat, _ector_cairo_extent_get(gd->s));
 
    return pat;
@@ -88,11 +85,6 @@ 
_ector_renderer_cairo_gradient_radial_ector_renderer_generic_base_draw(Eo *obj,
 
    eo_do_super(obj, ECTOR_RENDERER_CAIRO_GRADIENT_RADIAL_CLASS, 
ector_renderer_draw(op, clips, mul_col));
 
-   USE(obj, cairo_arc, EINA_FALSE);
-   USE(obj, cairo_fill, EINA_FALSE);
-   USE(obj, cairo_set_source, EINA_FALSE);
-   USE(obj, cairo_pattern_destroy, EINA_FALSE);
-
    cairo_arc(pd->parent->cairo,
              grd->radial.x, grd->radial.y,
              grd->radius,
@@ -121,9 +113,6 @@ 
_ector_renderer_cairo_gradient_radial_ector_renderer_cairo_base_fill(Eo *obj,
    pat = _ector_renderer_cairo_gradient_radial_prepare(obj, grd, gd, mul_col);
    if (!pat) return EINA_FALSE;
 
-   USE(obj, cairo_set_source, EINA_FALSE);
-   USE(obj, cairo_pattern_destroy, EINA_FALSE);
-
    cairo_set_source(pd->parent->cairo, pat);
    cairo_pattern_destroy(pat);
 
@@ -146,7 +135,24 @@ 
_ector_renderer_cairo_gradient_radial_ector_renderer_generic_base_bounds_get(Eo
                       gld->radius * 2, gld->radius * 2);
 }
 
-void
+static Eo_Base *
+_ector_renderer_cairo_gradient_radial_eo_base_constructor(Eo *obj,
+                                                          
Ector_Renderer_Cairo_Gradient_Radial_Data *pd EINA_UNUSED)
+{
+   USE(obj, cairo_set_source, NULL);
+   USE(obj, cairo_pattern_destroy, NULL);
+   USE(obj, cairo_arc, NULL);
+   USE(obj, cairo_fill, NULL);
+   USE(obj, cairo_set_source, NULL);
+   USE(obj, cairo_pattern_destroy, NULL);
+   USE(obj, cairo_pattern_set_extend, NULL);
+   USE(obj, cairo_pattern_create_radial, NULL);
+
+   eo_do_super(obj, ECTOR_RENDERER_CAIRO_GRADIENT_RADIAL_CLASS, obj = 
eo_constructor());
+   return obj;
+}
+
+static void
 _ector_renderer_cairo_gradient_radial_eo_base_destructor(Eo *obj,
                                                          
Ector_Renderer_Cairo_Gradient_Radial_Data *pd)
 {
@@ -158,7 +164,7 @@ _ector_renderer_cairo_gradient_radial_eo_base_destructor(Eo 
*obj,
    eo_do_super(obj, ECTOR_RENDERER_CAIRO_GRADIENT_RADIAL_CLASS, 
eo_destructor());
 }
 
-void
+static void
 _ector_renderer_cairo_gradient_radial_efl_gfx_gradient_base_stop_set(Eo *obj,
                                                                      
Ector_Renderer_Cairo_Gradient_Radial_Data *pd EINA_UNUSED,
                                                                      const 
Efl_Gfx_Gradient_Stop *colors,
diff --git a/src/lib/ector/cairo/ector_renderer_cairo_gradient_radial.eo 
b/src/lib/ector/cairo/ector_renderer_cairo_gradient_radial.eo
index 0b3ae92..b38ed03 100644
--- a/src/lib/ector/cairo/ector_renderer_cairo_gradient_radial.eo
+++ b/src/lib/ector/cairo/ector_renderer_cairo_gradient_radial.eo
@@ -9,6 +9,7 @@ class Ector.Renderer.Cairo.Gradient_Radial 
(Ector.Renderer.Cairo.Base, Ector.Ren
       Ector.Renderer.Generic.Base.crc.get;
       Ector.Renderer.Cairo.Base.fill;
       Eo.Base.destructor;
+      Eo.Base.constructor;
       Efl.Gfx.Gradient.Base.stop.set;
    }
 }
diff --git a/src/lib/ector/cairo/ector_renderer_cairo_shape.c 
b/src/lib/ector/cairo/ector_renderer_cairo_shape.c
index edee785..2c7a93e 100644
--- a/src/lib/ector/cairo/ector_renderer_cairo_shape.c
+++ b/src/lib/ector/cairo/ector_renderer_cairo_shape.c
@@ -71,8 +71,6 @@ _ector_renderer_cairo_shape_path_changed(void *data, Eo *obj, 
const Eo_Event_Des
 {
    Ector_Renderer_Cairo_Shape_Data *pd = data;
 
-   USE(obj, cairo_path_destroy, EINA_TRUE);
-
    if (pd->path) cairo_path_destroy(pd->path);
    pd->path = NULL;
 
@@ -108,8 +106,6 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_prepare(Eo *obj, Ector_R
    eo_do(obj, efl_gfx_shape_path_get(&cmds, &pts));
    if (!pd->path && cmds)
      {
-        USE(obj, cairo_new_path, EINA_FALSE);
-
         cairo_new_path(pd->parent->cairo);
 
         for (; *cmds != EFL_GFX_PATH_COMMAND_TYPE_END; cmds++)
@@ -117,22 +113,16 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_prepare(Eo *obj, Ector_R
              switch (*cmds)
                {
                 case EFL_GFX_PATH_COMMAND_TYPE_MOVE_TO:
-                   USE(obj, cairo_move_to, EINA_FALSE);
-
                    cairo_move_to(pd->parent->cairo, pts[0], pts[1]);
 
                    pts += 2;
                    break;
                 case EFL_GFX_PATH_COMMAND_TYPE_LINE_TO:
-                   USE(obj, cairo_line_to, EINA_FALSE);
-
                    cairo_line_to(pd->parent->cairo, pts[0], pts[1]);
 
                    pts += 2;
                    break;
                 case EFL_GFX_PATH_COMMAND_TYPE_CUBIC_TO:
-                   USE(obj, cairo_curve_to, EINA_FALSE);
-
                    // Be careful, we do have a different order than
                    // cairo, first is destination point, followed by
                    // the control point. The opposite of cairo.
@@ -143,8 +133,6 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_prepare(Eo *obj, Ector_R
                    pts += 6;
                    break;
                 case EFL_GFX_PATH_COMMAND_TYPE_CLOSE:
-                   USE(obj, cairo_close_path, EINA_FALSE);
-
                    cairo_close_path(pd->parent->cairo);
                    break;
                 case EFL_GFX_PATH_COMMAND_TYPE_LAST:
@@ -153,8 +141,6 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_prepare(Eo *obj, Ector_R
                }
           }
 
-        USE(obj, cairo_copy_path, EINA_FALSE);
-
         pd->path = cairo_copy_path(pd->parent->cairo);
      }
 
@@ -169,14 +155,10 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_draw(Eo *obj, Ector_Rend
 
    if (pd->path == NULL) return EINA_FALSE;
 
-   USE(obj, cairo_save, EINA_FALSE);
    cairo_save(pd->parent->cairo);
 
    eo_do_super(obj, ECTOR_RENDERER_CAIRO_SHAPE_CLASS, ector_renderer_draw(op, 
clips, mul_col));
 
-   USE(obj, cairo_new_path, EINA_FALSE);
-   USE(obj, cairo_append_path, EINA_FALSE);
-
    cairo_new_path(pd->parent->cairo);
    cairo_append_path(pd->parent->cairo, pd->path);
 
@@ -185,13 +167,6 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_draw(Eo *obj, Ector_Rend
 
    if (pd->shape->stroke.fill || pd->shape->stroke.color.a > 0)
      {
-        USE(obj, cairo_fill_preserve, EINA_FALSE);
-        USE(obj, cairo_set_source_rgba, EINA_FALSE);
-        USE(obj, cairo_stroke, EINA_FALSE);
-        USE(obj, cairo_set_line_width, EINA_FALSE);
-        USE(obj, cairo_set_line_cap, EINA_FALSE);
-        USE(obj, cairo_set_line_join, EINA_FALSE);
-
         cairo_fill_preserve(pd->parent->cairo);
 
         if (pd->shape->stroke.fill)
@@ -208,8 +183,6 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_draw(Eo *obj, Ector_Rend
               {
                  double *dashinfo;
 
-                 USE(obj, cairo_set_dash, EINA_FALSE);
-
                  dashinfo = (double *) malloc(2 * 
pd->shape->stroke.dash_length * sizeof(double));
                  for (i = 0; i < pd->shape->stroke.dash_length; i++)
                    {
@@ -229,11 +202,9 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_draw(Eo *obj, Ector_Rend
      }
    else
      {
-        USE(obj, cairo_fill, EINA_FALSE);
         cairo_fill(pd->parent->cairo);
      }
 
-   USE(obj, cairo_restore, EINA_FALSE);
    cairo_restore(pd->parent->cairo);
    return EINA_TRUE;
 }
@@ -267,7 +238,30 @@ 
_ector_renderer_cairo_shape_ector_renderer_generic_base_bounds_get(Eo *obj,
 Eo *
 _ector_renderer_cairo_shape_eo_base_constructor(Eo *obj, 
Ector_Renderer_Cairo_Shape_Data *pd)
 {
-   obj = eo_do_super_ret(obj, ECTOR_RENDERER_CAIRO_SHAPE_CLASS, obj, 
eo_constructor());
+   USE(obj, cairo_path_destroy, NULL);
+   USE(obj, cairo_restore, NULL);
+   USE(obj, cairo_fill, NULL);
+   USE(obj, cairo_set_dash, NULL);
+   USE(obj, cairo_fill_preserve, NULL);
+   USE(obj, cairo_set_source_rgba, NULL);
+   USE(obj, cairo_stroke, NULL);
+   USE(obj, cairo_set_line_width, NULL);
+   USE(obj, cairo_set_line_cap, NULL);
+   USE(obj, cairo_set_line_join, NULL);
+   USE(obj, cairo_new_path, NULL);
+   USE(obj, cairo_append_path, NULL);
+   USE(obj, cairo_save, NULL);
+   USE(obj, cairo_copy_path, NULL);
+   USE(obj, cairo_close_path, NULL);
+   USE(obj, cairo_curve_to, NULL);
+   USE(obj, cairo_line_to, NULL);
+   USE(obj, cairo_new_path, NULL);
+   USE(obj, cairo_path_destroy, NULL);
+   USE(obj, cairo_move_to, NULL);
+
+   obj = eo_do_super_ret(obj, ECTOR_RENDERER_CAIRO_SHAPE_CLASS, obj, obj = 
eo_constructor());
+   if (!obj) return NULL;
+
    pd->shape = eo_data_xref(obj, ECTOR_RENDERER_GENERIC_SHAPE_MIXIN, obj);
    pd->base = eo_data_xref(obj, ECTOR_RENDERER_GENERIC_BASE_CLASS, obj);
 
@@ -293,7 +287,6 @@ _ector_renderer_cairo_shape_eo_base_destructor(Eo *obj, 
Ector_Renderer_Cairo_Sha
 
    eo_do_super(obj, ECTOR_RENDERER_CAIRO_SHAPE_CLASS, eo_destructor());
 
-   USE(obj, cairo_path_destroy, );
    if (pd->path) cairo_path_destroy(pd->path);
 }
 

-- 


Reply via email to