Jean-Philippe Andre [Thu, 17 Mar 2016 05:02:26 +0000 (14:02 +0900)]
Efl.Canvas.Surface: Fix linking of inexisting functions
The EO files specified some functions that were not implemented.
Somehow this links fine with recent GCC but older versions have
trouble.
Jean-Philippe Andre [Wed, 16 Mar 2016 11:53:34 +0000 (20:53 +0900)]
Evas.Image: Simplify inheritance tree of image classes
This is a bit artificial, as all image objects are still based on
the Evas.Image main class. The inheritance tree alone does not
give much information on what features are supported by which
class (eg. only Efl.Canvas.Image supports the file interface for
file_set).
Jean-Philippe Andre [Wed, 16 Mar 2016 10:37:04 +0000 (19:37 +0900)]
Evas.Image: Create Efl.Canvas.Image for file & data images
This replaces standard Evas_Object_Image when it is used "normally",
ie. it's an image from a file or from a pixel buffer. All other APIs
(proxy, snapshot, 3d, gl, ...) are disabled on this object.
Also, reduce number of failing calls when the object is not a legacy
object, but a legacy function is called. This is because a lot of
image APIs are called internally using the legacy APIs, often in
order to reset the state of the image object (eg. set file to NULL,
etc...)
Jean-Philippe Andre [Wed, 16 Mar 2016 10:36:19 +0000 (19:36 +0900)]
Evas: Improve EVAS_OBJECT_LEGACY_API a bit more
This now calls EINA_SAFETY_ERROR which makes it easy to then
break inside _eina_legacy_error.
Jean-Philippe Andre [Tue, 15 Mar 2016 07:19:12 +0000 (16:19 +0900)]
Evas.Image: Move all legacy EAPI out of evas_object_image.c
Some of these functions are still be in use by the new EO objects,
like data_set/get/copy_set.
Jean-Philippe Andre [Wed, 16 Mar 2016 10:03:41 +0000 (19:03 +0900)]
Evas.Image: Fix ERR message (invalid call)
There was an unintended change from a silent return to EINA_SAFETY
inside _evas_object_image_free(). This avoids calling the function
altogether.
Stefan Schmidt [Wed, 16 Mar 2016 20:11:17 +0000 (21:11 +0100)]
cxx: follow eoid to eo_self rename in cxx generator and bindings
Bringing efl back to a building state with cxx enabled.
Chris Michael [Wed, 16 Mar 2016 13:24:20 +0000 (09:24 -0400)]
evas: Fix incorrect expression in efl_canvas_surface_x11
This patch fixes an issue detected by Coverity where 'obj' is written
twice with the same value
CID1353363
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Chris Michael [Wed, 16 Mar 2016 13:22:46 +0000 (09:22 -0400)]
evas: Fix incorrect expression in efl_canvas_surface_tbm
This patch fixes an issue detected by Coverity where 'obj' is written
twice with the same value
CID1353365
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Chris Michael [Wed, 16 Mar 2016 13:21:08 +0000 (09:21 -0400)]
evas: Fix incorrect expression in efl_canvas_surface_wayland
This patch fixes an issue detected by Coverity where 'obj' is written
twice with the same value
CID1353365
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Oleksandr Shcherbina [Tue, 15 Mar 2016 19:49:33 +0000 (12:49 -0700)]
evas.canvas3d: support static LOD technic
Summary:
Main flow: add several meshes(with different number of polygons) in one node,
enable LOD for node, set boundary distances to choose need mesh depend on distance
to the camera node, render only need mesh. Add API's enable lod in
evas_canvas3d_node module and set boundary distance to module
evas_canvas3d_mesh module Refactored function evas_canvas3d_node_mesh_collect
to calculate distance. Refactored _scene_render to have possibility pass to the
render only need LOD mesh.
Reviewers: cedric, Hermet, raster
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3731
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
jiin.moon [Tue, 15 Mar 2016 18:57:19 +0000 (11:57 -0700)]
evas: some changes for preload thread dead lock issue
Summary:
Add spin lock to access to new flag can check to
status of the preload
Reviewers: jpeg, cedric, jypark
Subscribers: raster
Differential Revision: https://phab.enlightenment.org/D3775
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Jee-Yong Um [Tue, 15 Mar 2016 18:39:47 +0000 (11:39 -0700)]
edje: remove redundant fetch code in file.set method
Summary:
Edje data structure is passed as a parameter, but in file.set method
_edje_fetch() is called one more time unnecessarily.
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3788
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Jee-Yong Um [Tue, 15 Mar 2016 18:31:30 +0000 (11:31 -0700)]
edje_cc: remove unnecessary internal function
Summary:
This internal function was made for checking non-existence of
Edje Part when handling insert_before/after attributes.
However, checking is implemented in different way and this function
is not used anywhere.
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3790
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Jee-Yong Um [Tue, 15 Mar 2016 18:29:47 +0000 (11:29 -0700)]
edje: fix wrong char in error message
Summary: fix wrong char in error message of _edje_real_part_image_set()
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3792
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Jee-Yong Um [Tue, 15 Mar 2016 18:24:20 +0000 (11:24 -0700)]
edje_cc: fix typo in error message
Summary: meaningless suffix is attached to a word in error message.
Reviewers: cedric
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3794
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Hosang Kim [Tue, 15 Mar 2016 18:23:28 +0000 (11:23 -0700)]
edje_cc: fix group inheriting
Summary:
When edje_cc inherits group, group's script wasn't copied.
So base group and inherited groups use same pointer.
When edje_cc makes lookups for script, loopkups is overwritten.
Test Plan: elementary_test -> shown error log
Reviewers: Hermet, woohyun, cedric, raster
Subscribers: jpeg
Differential Revision: https://phab.enlightenment.org/D3796
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Oleksandr Shcherbina [Tue, 15 Mar 2016 18:20:52 +0000 (11:20 -0700)]
eina: fix eina vector in case output vector the same as target vector
Summary:
Use aditional temporary vector for intermedia results in case output vector
the same as target vector in functions:
eina_vector2_transform,
eina_vector2_homogeneous_direction_transform,
eina_vector3_cross_product,
eina_vector3_transform,
eina_vector3_homogeneous_direction_transform
It was in original version (in evas_vecN, module evas_3d_utils.h)
Enrich test suit for this case.
Reviewers: jpeg, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3795
Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
Tom Hacohen [Tue, 15 Mar 2016 14:07:52 +0000 (14:07 +0000)]
Change the EFL according to the renaming of the eo_add() current object.
Tom Hacohen [Tue, 15 Mar 2016 14:03:00 +0000 (14:03 +0000)]
Eo: eo_add(), change current object's name (api).
It was temporarily eoid, change it to eo_self which is more
descriptive. In this process I also made it a macro to prepare
for the proposed changes on the ML for the fallback implementation
for compilers that don't support the compound statements returning
values gcc extension.
Jean-Philippe Andre [Tue, 15 Mar 2016 02:27:15 +0000 (11:27 +0900)]
Efl.Gfx.View: Try to document view_size
This is not easy as the view size might have different meanings.
Also, it's just not quite clear in my mind what it is :)
Jean-Philippe Andre [Fri, 11 Mar 2016 07:13:13 +0000 (16:13 +0900)]
Efl.Image: Move alpha to Efl.Gfx.Buffer
The buffer class is more low-level and alpha is a pretty
common property. I still wonder how to share it with the canvas
and other things.
It doesn't belong to Efl.Gfx.Base since we could have plain old
buffers that are not evas objects (only in-memory buffers) but
Efl.Gfx.Base may also need the alpha flag.
Jean-Philippe Andre [Fri, 11 Mar 2016 07:04:15 +0000 (16:04 +0900)]
Efl.Gfx.Buffer: Simplify data_get/set
Remove alpha, l, r, t, b and output length. Those are simply
too many parameters, making the function too inconvenient to use.
Jean-Philippe Andre [Fri, 11 Mar 2016 04:59:14 +0000 (13:59 +0900)]
Evas image: Move content_hint and scale_hint to Efl.Image
Jean-Philippe Andre [Fri, 11 Mar 2016 04:56:14 +0000 (13:56 +0900)]
Evas image: Deprecate evas_object_image_alpha_mask_set
Jean-Philippe Andre [Thu, 10 Mar 2016 06:13:20 +0000 (15:13 +0900)]
Evas.Image: Fix legacy proxy API
Jean-Philippe Andre [Wed, 9 Mar 2016 07:21:08 +0000 (16:21 +0900)]
Evas.Image: Move native surfaces to Efl.Canvas.Surface
X11, TBM and Wayland support are implemented for now.
Jean-Philippe Andre [Wed, 9 Mar 2016 07:18:34 +0000 (16:18 +0900)]
Evas engines: Add internal functions for native images
- image_native_init
- image_native_shutdown
init() will be used to test whether the engine supports a
certain type of native image.
Note: Native image support is very much dependent on the engine,
and some stuff like opengl should work everywhere (even in sw
with osmesa) but that's not the case.
Jean-Philippe Andre [Tue, 8 Mar 2016 06:53:02 +0000 (15:53 +0900)]
Evas.Image: remove video surface
Video stuff should move to a proper player class. I still wonder
how exactly Tizen video should be handled, as they continue to
reject emotion.
Jean-Philippe Andre [Tue, 8 Mar 2016 05:15:45 +0000 (14:15 +0900)]
Edje: Fix warning with clang
Annoying incomplete initializer warning. Apparently gcc/clang
don't consider {0} as good enough for "initialize everything to 0"
even though they do it.
Jean-Philippe Andre [Mon, 7 Mar 2016 13:30:41 +0000 (22:30 +0900)]
Examples: Update evas object eo example
Jean-Philippe Andre [Tue, 8 Mar 2016 05:11:07 +0000 (14:11 +0900)]
Evas: Move 3d to Efl.Canvas.Scene3d
This still seems a bit redondant with the underlying
Evas.Canvas3d.Scene class.
Jean-Philippe Andre [Tue, 8 Mar 2016 05:22:54 +0000 (14:22 +0900)]
Edje: fix tests snap
Jean-Philippe Andre [Mon, 14 Mar 2016 10:38:44 +0000 (19:38 +0900)]
Evas.Image: Complete implementation of proxy and snapshot
This moves the EO APIs away from Evas.Image and adds the required
legacy bindings.
Jean-Philippe Andre [Mon, 14 Mar 2016 10:10:54 +0000 (19:10 +0900)]
Evas.Image: Add new classes Snapshot and Proxy
Efl.Canvas.Snapshot and Efl.Canvas.Proxy are specialized
classes previously implemented as features of Evas.Image.
Note: this half of the work, as I suffered from a bad
merge and rebase with my work branch on top of master.
Jean-Philippe Andre [Mon, 14 Mar 2016 10:36:45 +0000 (19:36 +0900)]
Evas: Add internal macro EVAS_OBJECT_LEGACY_API
This checks whether the object was created with a legacy
API, ie without not using eo_add directly. This will be used
to help with the transition from EAPI to EO APIs, as some EAPIs
should not be used with the new EO types (eg. file_set on a
Proxy object).
By default it doesn't do anything besides ERR().
In DEBUG mode, it will return immediately.
The macro will return if eo_obj is NULL.
Jean-Philippe Andre [Fri, 4 Mar 2016 07:51:37 +0000 (16:51 +0900)]
Evas Image: Implement Gfx.Buffer get/set/copy_set APIs
Those APIs should provide a cleaner interface than the
old data_set/data_get APIs, by making sure the operations are
atomic (ie. no need to call size_set, cspace_set and then data_set).
padding/duplicated borders are not supported.
TODO: Implement legacy API on top of the new API, instead of
this quick patch
Jean-Philippe Andre [Fri, 4 Mar 2016 06:57:36 +0000 (15:57 +0900)]
Efl.Gfx.Buffer: Introduce buffer_set/get/copy_set
Hopefully the doc and signature are better than the current
evas image equivalents data_get/data_set.
Those APIs are not like map/unmap so we need to decide which
model we prefer.
Jean-Philippe Andre [Wed, 2 Mar 2016 11:46:11 +0000 (20:46 +0900)]
Efl.Gfx.Buffer: Add interface skeletton
Jean-Philippe Andre [Wed, 2 Mar 2016 10:39:41 +0000 (19:39 +0900)]
Efl.Image: Fix documentation for ratio + implement in evas image
Jean-Philippe Andre [Wed, 2 Mar 2016 09:12:29 +0000 (18:12 +0900)]
Evas image: Create interface Efl.Image.Animated
This interface groups all low-level animated image functions.
FIXME:
- Rename to Efl.Image.Animated once eolian is fixed
- Fix mess with emile enum (loop_hint)
Jean-Philippe Andre [Wed, 2 Mar 2016 07:38:57 +0000 (16:38 +0900)]
Efl.Image: Improve documentation a bit
This interface needs to be extended and cleaned up... this will
happen in the following patches.
Jean-Philippe Andre [Wed, 2 Mar 2016 07:18:40 +0000 (16:18 +0900)]
Efl.Gfx.View: Rename property size to view_size
size is an insanely generic name, so there would be clashes
in language bindings. Use eo_prefix.
Jean-Philippe Andre [Wed, 2 Mar 2016 06:44:12 +0000 (15:44 +0900)]
Evas image: Move filled property to Efl.Gfx.Fill and set as default
The filled property should be set to true by default since it
makes more sense. Legacy APIs behaviour is preserved by setting
the default to false.
Jean-Philippe Andre [Wed, 2 Mar 2016 06:07:03 +0000 (15:07 +0900)]
Efl.Gfx.Fill: Remove fill_spread
It's not actually implemented anywhere. There's a flag that's
never read. Proper support would require quite some work.
Once we actually implement fill_spread support, we can bring
the API back without breaking compatibility.
Jean-Philippe Andre [Wed, 2 Mar 2016 05:41:32 +0000 (14:41 +0900)]
Evas filters: Simplify evas_filter_dirty
Objects can mark themselves as changed rather than having all this
duplicated code inside the mixin.
Thiep Ha [Mon, 14 Mar 2016 23:15:05 +0000 (08:15 +0900)]
ecore_evas_cocoa: correct focus handlers
Focus handlers are set incorrectly.
It causes windows process focus when they are acttually unfocused.
This patch corrects it.
Signed-off-by: Thiep Ha <thiepha@gmail.com>
Cedric BAIL [Mon, 14 Mar 2016 21:59:33 +0000 (14:59 -0700)]
evas: move Evas_Polygon to become Efl_Canvas_Polygon.
TODO: add support for 2 points (aka line).
Cedric BAIL [Fri, 11 Mar 2016 00:29:56 +0000 (16:29 -0800)]
edje: seems like preloading is fixed and we can now run edje_cc in //
Derek Foreman [Fri, 11 Mar 2016 19:48:44 +0000 (13:48 -0600)]
ecore_drm: Disable custom tick if we can't wait for vblank
If we fail to schedule a VBlank event, then we should disable custom
ticks and fallback to timer-based animators. This patch fixes some
issues with Intel Atom based setups where rendering would fail when
using custom animators.
@fix
Tom Hacohen [Mon, 14 Mar 2016 17:19:58 +0000 (17:19 +0000)]
Eo: Move generation of Eo_Event_Cb to Eolian.
This fixes the type redefinition warning (apparently it's C11).
Thanks to bu5hm4n for reporting this.
Daniel Kolesa [Mon, 14 Mar 2016 17:16:41 +0000 (17:16 +0000)]
eolian: builtin support for event callback signature
Daniel Kolesa [Mon, 14 Mar 2016 16:58:09 +0000 (16:58 +0000)]
eolian generator: simplify typedef gen
Vincent Torri [Sat, 12 Mar 2016 09:49:33 +0000 (10:49 +0100)]
Evil: the addr argument of dladdr is acually used
Vincent Torri [Sat, 12 Mar 2016 09:46:52 +0000 (10:46 +0100)]
Evil: cosmetic change
Vincent Torri [Fri, 11 Mar 2016 17:35:46 +0000 (18:35 +0100)]
Ector: try to load libcairo-2.dll first on Windows
Summary: win-builds provide libcairo-2.dll and not libcairo.dlL
Test Plan: ector test progral
Reviewers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3787
Jean Guyomarc'h [Sat, 12 Mar 2016 21:21:01 +0000 (22:21 +0100)]
eina: mix possibly misleading indentation
Jean Guyomarc'h [Sat, 12 Mar 2016 21:16:06 +0000 (22:16 +0100)]
eina: remove un-necessary tests before freeing memory
free() is specified to do nothing at all when taking NULL as input.
Boris Faure [Wed, 2 Sep 2015 21:02:29 +0000 (23:02 +0200)]
evas_text_grid: display bold/italic/bolditalic fonts if available
Boris Faure [Wed, 2 Sep 2015 18:50:31 +0000 (20:50 +0200)]
evas_text_grid: remove optimisation (will come back later) to make code more readable
Mike Blumenkrantz [Fri, 11 Mar 2016 21:04:56 +0000 (16:04 -0500)]
gl_common: call evas_gl_common_texture_free() before dropping image cache
texture_free() accesses struct members which can be freed if image cache entry
reaches zero references
@fix
==30989== Invalid read of size 1
==30989== at 0x23BA2934: evas_gl_common_texture_free (evas_gl_texture.c:1506)
==30989== by 0x23BA9117: evas_gl_common_image_free (evas_gl_image.c:724)
==30989== by 0x23B80DA1: eng_image_data_put (evas_engine.c:988)
==30989== by 0x872681A: _evas_image_data_set (evas_object_image.c:1264)
==30989== by 0x87360B5: evas_obj_image_data_set (evas_image.eo.c:236)
==30989== by 0x8736B43: evas_object_image_data_set (evas_image.eo.c:741)
==30989== by 0x4820A4: e_comp_object_render (e_comp_object.c:3746)
==30989== by 0x477B92: _e_comp_object_pixels_get (e_comp_object.c:909)
==30989== by 0x872CF52: evas_process_dirty_pixels (evas_object_image.c:3154)
==30989== by 0x872DD16: _evas_image_render (evas_object_image.c:3389)
==30989== by 0x872DB01: evas_object_image_render (evas_object_image.c:3351)
==30989== by 0x879C524: evas_render_mapped (evas_render.c:1802)
==30989== by 0x879E82A: evas_render_updates_internal_loop (evas_render.c:2380)
==30989== by 0x87A005D: evas_render_updates_internal (evas_render.c:2770)
==30989== by 0x87A140D: evas_render_updates_internal_wait (evas_render.c:3122)
==30989== by 0x87A1502: _evas_canvas_render_updates (evas_render.c:3144)
==30989== by 0x871ED0D: evas_canvas_render_updates (evas_canvas.eo.c:354)
==30989== by 0x8720C5F: evas_render_updates (evas_canvas.eo.c:1089)
==30989== by 0x22F65C35: _ecore_evas_drm_render (ecore_evas_drm.c:1072)
==30989== by 0x7416F7B: _ecore_evas_idle_enter (ecore_evas.c:172)
==30989== by 0xDDE3577: _ecore_call_task_cb (ecore_private.h:282)
==30989== by 0xDDE3A5E: _ecore_idle_enterer_call (ecore_idle_enterer.c:174)
==30989== by 0xDDE836B: _ecore_main_loop_iterate_internal (ecore_main.c:2261)
==30989== by 0xDDE67B8: ecore_main_loop_begin (ecore_main.c:1284)
==30989== by 0x4407B6: main (e_main.c:1087)
==30989== Address 0x23a9e1d2 is 338 bytes inside a block of size 552 free'd
==30989== at 0x4C29E00: free (vg_replace_malloc.c:530)
==30989== by 0x882B2E2: _evas_common_rgba_image_delete (evas_image_main.c:343)
==30989== by 0x87B1E17: _evas_cache_image_entry_delete (evas_cache_image.c:205)
==30989== by 0x87B3C52: evas_cache_image_drop (evas_cache_image.c:950)
==30989== by 0x23BA90F5: evas_gl_common_image_free (evas_gl_image.c:722)
==30989== by 0x23B80DA1: eng_image_data_put (evas_engine.c:988)
==30989== by 0x872681A: _evas_image_data_set (evas_object_image.c:1264)
==30989== by 0x87360B5: evas_obj_image_data_set (evas_image.eo.c:236)
==30989== by 0x8736B43: evas_object_image_data_set (evas_image.eo.c:741)
==30989== by 0x4820A4: e_comp_object_render (e_comp_object.c:3746)
==30989== by 0x477B92: _e_comp_object_pixels_get (e_comp_object.c:909)
==30989== by 0x872CF52: evas_process_dirty_pixels (evas_object_image.c:3154)
==30989== by 0x872DD16: _evas_image_render (evas_object_image.c:3389)
==30989== by 0x872DB01: evas_object_image_render (evas_object_image.c:3351)
==30989== by 0x879C524: evas_render_mapped (evas_render.c:1802)
==30989== by 0x879E82A: evas_render_updates_internal_loop (evas_render.c:2380)
==30989== by 0x87A005D: evas_render_updates_internal (evas_render.c:2770)
==30989== by 0x87A140D: evas_render_updates_internal_wait (evas_render.c:3122)
==30989== by 0x87A1502: _evas_canvas_render_updates (evas_render.c:3144)
==30989== by 0x871ED0D: evas_canvas_render_updates (evas_canvas.eo.c:354)
==30989== by 0x8720C5F: evas_render_updates (evas_canvas.eo.c:1089)
==30989== by 0x22F65C35: _ecore_evas_drm_render (ecore_evas_drm.c:1072)
==30989== by 0x7416F7B: _ecore_evas_idle_enter (ecore_evas.c:172)
==30989== by 0xDDE3577: _ecore_call_task_cb (ecore_private.h:282)
==30989== by 0xDDE3A5E: _ecore_idle_enterer_call (ecore_idle_enterer.c:174)
==30989== by 0xDDE836B: _ecore_main_loop_iterate_internal (ecore_main.c:2261)
==30989== by 0xDDE67B8: ecore_main_loop_begin (ecore_main.c:1284)
==30989== by 0x4407B6: main (e_main.c:1087)
==30989== Block was alloc'd at
==30989== at 0x4C2AA98: calloc (vg_replace_malloc.c:711)
==30989== by 0x882B0A0: _evas_common_rgba_image_new (evas_image_main.c:295)
==30989== by 0x87B1F1B: _evas_cache_image_entry_new (evas_cache_image.c:253)
==30989== by 0x87B4170: evas_cache_image_data (evas_cache_image.c:1079)
==30989== by 0x23BA7EDE: evas_gl_common_image_new_from_data (evas_gl_image.c:333)
==30989== by 0x23B7F972: eng_image_new_from_data (evas_engine.c:531)
==30989== by 0x23B80D81: eng_image_data_put (evas_engine.c:984)
==30989== by 0x872681A: _evas_image_data_set (evas_object_image.c:1264)
==30989== by 0x87360B5: evas_obj_image_data_set (evas_image.eo.c:236)
==30989== by 0x8736B43: evas_object_image_data_set (evas_image.eo.c:741)
==30989== by 0x4820A4: e_comp_object_render (e_comp_object.c:3746)
==30989== by 0x477B92: _e_comp_object_pixels_get (e_comp_object.c:909)
==30989== by 0x872CF52: evas_process_dirty_pixels (evas_object_image.c:3154)
==30989== by 0x872DD16: _evas_image_render (evas_object_image.c:3389)
==30989== by 0x872DB01: evas_object_image_render (evas_object_image.c:3351)
==30989== by 0x879C524: evas_render_mapped (evas_render.c:1802)
==30989== by 0x879E82A: evas_render_updates_internal_loop (evas_render.c:2380)
==30989== by 0x87A005D: evas_render_updates_internal (evas_render.c:2770)
==30989== by 0x87A140D: evas_render_updates_internal_wait (evas_render.c:3122)
==30989== by 0x87A1502: _evas_canvas_render_updates (evas_render.c:3144)
==30989== by 0x871ED0D: evas_canvas_render_updates (evas_canvas.eo.c:354)
==30989== by 0x8720C5F: evas_render_updates (evas_canvas.eo.c:1089)
==30989== by 0x22F65C35: _ecore_evas_drm_render (ecore_evas_drm.c:1072)
==30989== by 0x7416F7B: _ecore_evas_idle_enter (ecore_evas.c:172)
==30989== by 0xDDE3577: _ecore_call_task_cb (ecore_private.h:282)
==30989== by 0xDDE3A5E: _ecore_idle_enterer_call (ecore_idle_enterer.c:174)
==30989== by 0xDDE836B: _ecore_main_loop_iterate_internal (ecore_main.c:2261)
==30989== by 0xDDE67B8: ecore_main_loop_begin (ecore_main.c:1284)
==30989== by 0x4407B6: main (e_main.c:1087)
==30989==
==30989== Invalid write of size 1
==30989== at 0x23BA293E: evas_gl_common_texture_free (evas_gl_texture.c:1506)
==30989== by 0x23BA9117: evas_gl_common_image_free (evas_gl_image.c:724)
==30989== by 0x23B80DA1: eng_image_data_put (evas_engine.c:988)
==30989== by 0x872681A: _evas_image_data_set (evas_object_image.c:1264)
==30989== by 0x87360B5: evas_obj_image_data_set (evas_image.eo.c:236)
==30989== by 0x8736B43: evas_object_image_data_set (evas_image.eo.c:741)
==30989== by 0x4820A4: e_comp_object_render (e_comp_object.c:3746)
==30989== by 0x477B92: _e_comp_object_pixels_get (e_comp_object.c:909)
==30989== by 0x872CF52: evas_process_dirty_pixels (evas_object_image.c:3154)
==30989== by 0x872DD16: _evas_image_render (evas_object_image.c:3389)
==30989== by 0x872DB01: evas_object_image_render (evas_object_image.c:3351)
==30989== by 0x879C524: evas_render_mapped (evas_render.c:1802)
==30989== by 0x879E82A: evas_render_updates_internal_loop (evas_render.c:2380)
==30989== by 0x87A005D: evas_render_updates_internal (evas_render.c:2770)
==30989== by 0x87A140D: evas_render_updates_internal_wait (evas_render.c:3122)
==30989== by 0x87A1502: _evas_canvas_render_updates (evas_render.c:3144)
==30989== by 0x871ED0D: evas_canvas_render_updates (evas_canvas.eo.c:354)
==30989== by 0x8720C5F: evas_render_updates (evas_canvas.eo.c:1089)
==30989== by 0x22F65C35: _ecore_evas_drm_render (ecore_evas_drm.c:1072)
==30989== by 0x7416F7B: _ecore_evas_idle_enter (ecore_evas.c:172)
==30989== by 0xDDE3577: _ecore_call_task_cb (ecore_private.h:282)
==30989== by 0xDDE3A5E: _ecore_idle_enterer_call (ecore_idle_enterer.c:174)
==30989== by 0xDDE836B: _ecore_main_loop_iterate_internal (ecore_main.c:2261)
==30989== by 0xDDE67B8: ecore_main_loop_begin (ecore_main.c:1284)
==30989== by 0x4407B6: main (e_main.c:1087)
==30989== Address 0x23a9e1d2 is 338 bytes inside a block of size 552 free'd
==30989== at 0x4C29E00: free (vg_replace_malloc.c:530)
==30989== by 0x882B2E2: _evas_common_rgba_image_delete (evas_image_main.c:343)
==30989== by 0x87B1E17: _evas_cache_image_entry_delete (evas_cache_image.c:205)
==30989== by 0x87B3C52: evas_cache_image_drop (evas_cache_image.c:950)
==30989== by 0x23BA90F5: evas_gl_common_image_free (evas_gl_image.c:722)
==30989== by 0x23B80DA1: eng_image_data_put (evas_engine.c:988)
==30989== by 0x872681A: _evas_image_data_set (evas_object_image.c:1264)
==30989== by 0x87360B5: evas_obj_image_data_set (evas_image.eo.c:236)
==30989== by 0x8736B43: evas_object_image_data_set (evas_image.eo.c:741)
==30989== by 0x4820A4: e_comp_object_render (e_comp_object.c:3746)
==30989== by 0x477B92: _e_comp_object_pixels_get (e_comp_object.c:909)
==30989== by 0x872CF52: evas_process_dirty_pixels (evas_object_image.c:3154)
==30989== by 0x872DD16: _evas_image_render (evas_object_image.c:3389)
==30989== by 0x872DB01: evas_object_image_render (evas_object_image.c:3351)
==30989== by 0x879C524: evas_render_mapped (evas_render.c:1802)
==30989== by 0x879E82A: evas_render_updates_internal_loop (evas_render.c:2380)
==30989== by 0x87A005D: evas_render_updates_internal (evas_render.c:2770)
==30989== by 0x87A140D: evas_render_updates_internal_wait (evas_render.c:3122)
==30989== by 0x87A1502: _evas_canvas_render_updates (evas_render.c:3144)
==30989== by 0x871ED0D: evas_canvas_render_updates (evas_canvas.eo.c:354)
==30989== by 0x8720C5F: evas_render_updates (evas_canvas.eo.c:1089)
==30989== by 0x22F65C35: _ecore_evas_drm_render (ecore_evas_drm.c:1072)
==30989== by 0x7416F7B: _ecore_evas_idle_enter (ecore_evas.c:172)
==30989== by 0xDDE3577: _ecore_call_task_cb (ecore_private.h:282)
==30989== by 0xDDE3A5E: _ecore_idle_enterer_call (ecore_idle_enterer.c:174)
==30989== by 0xDDE836B: _ecore_main_loop_iterate_internal (ecore_main.c:2261)
==30989== by 0xDDE67B8: ecore_main_loop_begin (ecore_main.c:1284)
==30989== by 0x4407B6: main (e_main.c:1087)
==30989== Block was alloc'd at
==30989== at 0x4C2AA98: calloc (vg_replace_malloc.c:711)
==30989== by 0x882B0A0: _evas_common_rgba_image_new (evas_image_main.c:295)
==30989== by 0x87B1F1B: _evas_cache_image_entry_new (evas_cache_image.c:253)
==30989== by 0x87B4170: evas_cache_image_data (evas_cache_image.c:1079)
==30989== by 0x23BA7EDE: evas_gl_common_image_new_from_data (evas_gl_image.c:333)
==30989== by 0x23B7F972: eng_image_new_from_data (evas_engine.c:531)
==30989== by 0x23B80D81: eng_image_data_put (evas_engine.c:984)
==30989== by 0x872681A: _evas_image_data_set (evas_object_image.c:1264)
==30989== by 0x87360B5: evas_obj_image_data_set (evas_image.eo.c:236)
==30989== by 0x8736B43: evas_object_image_data_set (evas_image.eo.c:741)
==30989== by 0x4820A4: e_comp_object_render (e_comp_object.c:3746)
==30989== by 0x477B92: _e_comp_object_pixels_get (e_comp_object.c:909)
==30989== by 0x872CF52: evas_process_dirty_pixels (evas_object_image.c:3154)
==30989== by 0x872DD16: _evas_image_render (evas_object_image.c:3389)
==30989== by 0x872DB01: evas_object_image_render (evas_object_image.c:3351)
==30989== by 0x879C524: evas_render_mapped (evas_render.c:1802)
==30989== by 0x879E82A: evas_render_updates_internal_loop (evas_render.c:2380)
==30989== by 0x87A005D: evas_render_updates_internal (evas_render.c:2770)
==30989== by 0x87A140D: evas_render_updates_internal_wait (evas_render.c:3122)
==30989== by 0x87A1502: _evas_canvas_render_updates (evas_render.c:3144)
==30989== by 0x871ED0D: evas_canvas_render_updates (evas_canvas.eo.c:354)
==30989== by 0x8720C5F: evas_render_updates (evas_canvas.eo.c:1089)
==30989== by 0x22F65C35: _ecore_evas_drm_render (ecore_evas_drm.c:1072)
==30989== by 0x7416F7B: _ecore_evas_idle_enter (ecore_evas.c:172)
==30989== by 0xDDE3577: _ecore_call_task_cb (ecore_private.h:282)
==30989== by 0xDDE3A5E: _ecore_idle_enterer_call (ecore_idle_enterer.c:174)
==30989== by 0xDDE836B: _ecore_main_loop_iterate_internal (ecore_main.c:2261)
==30989== by 0xDDE67B8: ecore_main_loop_begin (ecore_main.c:1284)
==30989== by 0x4407B6: main (e_main.c:1087)
Mike Blumenkrantz [Fri, 11 Mar 2016 20:55:36 +0000 (15:55 -0500)]
gl_common: remove incorrect EINA_UNUSED for evas_gl_common_texture_free
Stefan Schmidt [Fri, 11 Mar 2016 16:10:54 +0000 (17:10 +0100)]
tests eeze: enable eeze_net IPv6 test again and skip if impossible
The test depends on the host system having IPv6 setup on the loopback device.
This is not always the case even if we have a system that does have
"struct ipv6_mreq", our HAVE_IPV6 test, and would support it.
Skip here if we can't fetch an IPv6 address. The IPv4 test is still running
regardless.
Stefan Schmidt [Fri, 11 Mar 2016 16:10:07 +0000 (17:10 +0100)]
eeze: remove trailing whitespace
Nothing to see here, just stumbled over it when reading through the file.
Derek Foreman [Fri, 11 Mar 2016 00:34:19 +0000 (18:34 -0600)]
ecore_drm: Update device copy of framebuffer after page flip completes
The device struct is API, so its copy of the fb pointer needs to be
kept in sync with the output struct's. We do this when the flip completes
to try to prevent access to an fb that's about to flip.
This fixes Enlightenment screenshots.
@fix
Daniel Kolesa [Fri, 11 Mar 2016 16:19:53 +0000 (16:19 +0000)]
eolian generator: close the file with zero write
Daniel Kolesa [Fri, 11 Mar 2016 13:16:34 +0000 (13:16 +0000)]
eolian generator: check fwrite return value currectly
This fixes CID 1327247.
@fix
Daniel Kolesa [Fri, 11 Mar 2016 13:04:33 +0000 (13:04 +0000)]
eolian: refactor database_typedecl_to_str to remove dead code
After the type system transition there was some unnecessary dead code.
Fixes CID 1352512.
Tom Hacohen [Fri, 11 Mar 2016 12:24:11 +0000 (12:24 +0000)]
Revert "Eo: Change to the Eo4 eo_add syntax."
I found a way to keep eo_add() the way it was and gracefully degrade to
a portable (but not as fast) solution for compilers that don't support
the compound macros returning a value gnu extension: ({int a; a;}).
I'm reverting these changes now, and I'll introduce the fallback as soon
as I can.
This reverts commit
b85bb3718389470bfc78c079dd5e06def5e963f3.
Tom Hacohen [Fri, 11 Mar 2016 12:24:10 +0000 (12:24 +0000)]
Revert "Vg node: modify so the eo_add migration script won't break."
This reverts commit
6ac1fb78d855be27d28378a659887b693e5fb266.
Tom Hacohen [Fri, 11 Mar 2016 12:24:09 +0000 (12:24 +0000)]
Revert "Ector and eo suite: Semi automatically migrate to the new eo_add."
This reverts commit
df83edaeb6b10324868f28e8f1910147ba22e5e5.
Tom Hacohen [Fri, 11 Mar 2016 12:24:08 +0000 (12:24 +0000)]
Revert "Automatic migration to the new eo_add syntax."
This reverts commit
4f949a2757b6332306264d7f126b15ba7bfd37d4.
Tom Hacohen [Fri, 11 Mar 2016 12:24:06 +0000 (12:24 +0000)]
Revert "Examples: Update according to recent eo_add changes."
This reverts commit
6594ba0b6df9ba72f031a00d0e8ba3b23cf2c0b2.
Tom Hacohen [Fri, 11 Mar 2016 12:24:05 +0000 (12:24 +0000)]
Revert "Fix examples according to the recent eo event changes."
This reverts commit
d2fba6c5959f82f35984167131d3b67207780f48.
Tom Hacohen [Fri, 11 Mar 2016 12:28:51 +0000 (12:28 +0000)]
Revert "cxx: Migrate C++ binding to the new eo_add syntax"
This reverts commit
48f62ad686d11c97ec62b1ba528262edf39cafbf.
jinwoo.shin [Thu, 10 Mar 2016 22:15:13 +0000 (14:15 -0800)]
edje: add error log message for missing description
Summary:
Developer cannot notice that any description didn't applied due to missing description or typo.
This message will be helpful to make correct the application.
Reviewers: cedric, Hermet, raster
Subscribers: soohye.shin, minkyu, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3783
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Cedric BAIL [Thu, 10 Mar 2016 21:03:02 +0000 (13:03 -0800)]
efl: rename efl.core.animator to efl.animator.
It has been decided that we would not use any namespace for interface
and they will sit in efl main namespace.
This patch doesn't correct the naming of the event has we don't have a
prefix for event. We do still have EFL_ANIMATOR_EVENT_ANIMATOR_TICK,
instead of a nicer EFL_EVENT_ANIMATOR_TICK.
Derek Foreman [Thu, 10 Mar 2016 19:56:24 +0000 (13:56 -0600)]
ecore_wl2: Don't treat EINVAL as a recoverable condition
EINVAL is bad, we can't go on. If we treat it like it's not a fatal
error we'll end up spinning on the fd and constantly retrying sends
on the dead wayland connection.
@fix
Mike Blumenkrantz [Thu, 10 Mar 2016 18:31:23 +0000 (13:31 -0500)]
ecore-wl2: set fd handler active flags correctly for connect/create
@fix
Chris Michael [Thu, 10 Mar 2016 17:20:34 +0000 (12:20 -0500)]
evas-gl: Fix dereference after null check
Coverity reports that 'ctx' may be NULL here and we should check it
before usage (as is done above).
Coverity CID1339785
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Chris Michael [Thu, 10 Mar 2016 17:13:44 +0000 (12:13 -0500)]
edje: Don't leak array source if we are going to exit function
This patch fixes a potential resource leak where we would previously
create a new eina_array and then possibly return from this function
(when checking validity of 's' parameter) without freeing the newly
created array.
Coverity CID1350291
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Stefan Schmidt [Wed, 9 Mar 2016 22:02:46 +0000 (23:02 +0100)]
build coverage: make coverage numbers more accurate by using a baseline
The lcov tool offers the functionality to have an initial run over the code base
before the tests are executed to make sure it catches all files, even the ones
that are not loaded during the test run.
This is something we missed so far. The reports have only been in relation to
the files that actually have been loaded during the test. We missed quite a
few files which made our numbers inaccurate. Things like
modules/emotion/gstreamer1 have no tests yet and thus never showed up in the
coverage report. While it has 103 functions and over thousand lines which need
to get covered. With the baseline this is handled now. Thanks goes to the folks
at LibreOffice who described their lcov setup here:
https://wiki.documentfoundation.org/Development/Lcov
New numbers are lower now as we count in all the files never loaded which
decreases our percentages.
Overall coverage rate:
lines......: 30.2% (65119 of 215841 lines)
functions..: 34.0% (6361 of 18733 functions)
branches...: 23.6% (35627 of 151096 branches)
Stefan Schmidt [Wed, 9 Mar 2016 15:13:41 +0000 (16:13 +0100)]
examples gitignore: adding four new examples to their .gitignore files
Vitor Sousa [Wed, 9 Mar 2016 21:51:21 +0000 (18:51 -0300)]
eo_cxx: correct constness of basic Eo C++ wrapper functions
Mike Blumenkrantz [Wed, 9 Mar 2016 20:36:28 +0000 (15:36 -0500)]
ecore-drm: don't set DBG on log level if DBG not already set
...
Chris Michael [Wed, 9 Mar 2016 20:24:24 +0000 (15:24 -0500)]
ecore-drm: Disable default DBG log level
Simple patch to disable setting ecore-drm log level to DBG by default
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Vitor Sousa [Wed, 9 Mar 2016 18:46:19 +0000 (15:46 -0300)]
cxx: Migrate C++ binding to the new eo_add syntax
Tom Hacohen [Wed, 9 Mar 2016 17:16:19 +0000 (17:16 +0000)]
Fix examples according to the recent eo event changes.
Tom Hacohen [Wed, 9 Mar 2016 17:02:42 +0000 (17:02 +0000)]
Examples: Update according to recent eo_add changes.
Tom Hacohen [Wed, 9 Mar 2016 15:47:28 +0000 (15:47 +0000)]
Automatic migration to the new eo_add syntax.
Tom Hacohen [Wed, 9 Mar 2016 15:39:51 +0000 (15:39 +0000)]
Ector and eo suite: Semi automatically migrate to the new eo_add.
There were some issues with the migration that required manual
intervention.
Tom Hacohen [Wed, 9 Mar 2016 15:22:09 +0000 (15:22 +0000)]
Vg node: modify so the eo_add migration script won't break.
Tom Hacohen [Wed, 9 Mar 2016 15:06:49 +0000 (15:06 +0000)]
Eo: Change to the Eo4 eo_add syntax.
The current one was a hack in the meanwhile and was not protable.
Stefan Schmidt [Wed, 9 Mar 2016 11:03:51 +0000 (12:03 +0100)]
tests evas: enable xpm image loader in tests
Added in 2014 and not enabled since then. This seems to be fixed now so we can
finally enable it.
Stefan Schmidt [Wed, 9 Mar 2016 10:52:18 +0000 (11:52 +0100)]
tests evas: remove commented out function which have not been used since 2014
It was already unused when it was disabled almost two years ago.
dbe02d593e2fed9ab774cebbeaf669c2de710600
Its about time to remove it.
Chris Michael [Wed, 9 Mar 2016 13:27:05 +0000 (08:27 -0500)]
ecore-drm: Don't re-include config.h
As ecore_drm_private.h already includes config.h header, we don't need
to include it here in these files also
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Chris Michael [Wed, 9 Mar 2016 13:22:22 +0000 (08:22 -0500)]
ecore-drm: Update copyright notice
As portions of this code have been derived from existing code in
Weston, we should also be including their copyright/licence text to
give credit.
NB: Fixes T3286
@fix
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
Tom Hacohen [Tue, 8 Mar 2016 14:23:57 +0000 (14:23 +0000)]
Revert "ecore: Create Promises"
Reverting this at Felipe's request following my email. There are many
things I strongly object to in this commit. I've touched the surface of
those on the ML (which doesn't work at the moment), though we need to
better discuss it.
The gist:
1. dlsym is a really bad hack that is not even needed.
2. I don't see why eo should even be aware of promises. It's not aware
of list, hash and etc.
3. The eolian changes were done wrong.
This should have been discussed and consulted before done, even if only
because of the amount of hacks it includes and the cross-domain (ecore,
eo and eolian) nature of it.
This reverts commit
f9ba80ab33e0b94dad7ec103e6d261a644f7835f.
Vitor Sousa [Tue, 8 Mar 2016 13:28:33 +0000 (10:28 -0300)]
eo_cxx: Fix unused parameter warning when no constructor is required
Test Plan: compile elm
Reviewers: stefan_schmidt
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D3778
Stefan Schmidt [Mon, 7 Mar 2016 22:40:37 +0000 (23:40 +0100)]
tests eolian: add test cases for type stub generations
While we had the functionality to generate type stubs header we never had
these tested in our unit test setup. Adding to simple cases for struct
and typedef which we already use for normal header generation tests.