platform/upstream/efl.git
9 years agoee-wayland: use frame callbacks exclusively to determine render timing
Mike Blumenkrantz [Tue, 20 Oct 2015 20:41:28 +0000 (16:41 -0400)]
ee-wayland: use frame callbacks exclusively to determine render timing

when running in a wayland compositor, the ideal mode of operation is to
only prepare/send frames when the compositor has finished with the previous
frame

to achieve this, manual rendering can be toggled upon creating and completing
a frame callback, ensuring that a canvas never has multiple pending buffers at
any given time

fix T2784

9 years ago ecore fb: Unbreak ecore_evas_fb.
Chidambar Zinnoury [Tue, 20 Oct 2015 16:58:18 +0000 (18:58 +0200)]
 ecore fb: Unbreak ecore_evas_fb.

 The ecore_evas_fb module uses ecore_fb_ts_* functions which are only available to EFL internals and not for the general API.

 However, EAPI not being defined in ecore_fb_private.h made the symbols not being exported at all, which in return made execution-time linking not finding them and thus failing.

9 years ago ecore fb: We shall look for the Ecore_Fb.h header only where needed.
Chidambar Zinnoury [Tue, 20 Oct 2015 16:56:47 +0000 (18:56 +0200)]
 ecore fb: We shall look for the Ecore_Fb.h header only where needed.

9 years agoedje - fix some horrible misleading indenting in edje calc.
Carsten Haitzler (Rasterman) [Tue, 20 Oct 2015 09:07:21 +0000 (18:07 +0900)]
edje - fix some horrible misleading indenting in edje calc.

just whitespace fixups

9 years agoefreet: use eina_file_mkstemp() for portability and fix a bug on Windows
Vincent Torri [Tue, 29 Sep 2015 21:37:46 +0000 (23:37 +0200)]
efreet: use eina_file_mkstemp() for portability and fix a bug on Windows

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_exe: terminate threads also in destructor
Vincent Torri [Sun, 27 Sep 2015 08:25:33 +0000 (10:25 +0200)]
ecore_exe: terminate threads also in destructor

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore-wayland: only do deferred shell surface creation when a surface exists
Mike Blumenkrantz [Mon, 19 Oct 2015 20:20:45 +0000 (16:20 -0400)]
ecore-wayland: only do deferred shell surface creation when a surface exists

9 years agoecore-wayland: defer shell surface creation for windows if shell is not bound
Mike Blumenkrantz [Mon, 19 Oct 2015 20:13:50 +0000 (16:13 -0400)]
ecore-wayland: defer shell surface creation for windows if shell is not bound

in the case where a surface is created before the compositor binds its shell(s),
a shell surface would never be created

fixes case where internal windows would not create frames in enlightenment

@fix

9 years agoevas textblock: fix memory leak
Subodh Kumar [Mon, 19 Oct 2015 18:34:38 +0000 (11:34 -0700)]
evas textblock: fix memory leak

Summary:
Fix memory leak

Delimiter string is being saved using
eina_stringshare_replace without any del or free
when object is deleted.

@fix

Test Plan: N/A

Reviewers: tasn, herdsman

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3175

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_x: removing useless assignment.
Srivardhan Hebbar [Mon, 19 Oct 2015 18:24:49 +0000 (11:24 -0700)]
ecore_x: removing useless assignment.

Summary:
The assigned value has no effect outside the function. So removing it.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D3181

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_x: handling realloc failure.
Srivardhan Hebbar [Mon, 19 Oct 2015 18:21:22 +0000 (11:21 -0700)]
ecore_x: handling realloc failure.

Summary:
If realloc fails, lst would be NULL. So handling it.
Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D3182

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoector: removing useless assignement.
Srivardhan Hebbar [Mon, 19 Oct 2015 18:17:22 +0000 (11:17 -0700)]
ector: removing useless assignement.

Summary:
Null assignment has no effect in the caller function. So removed it.

Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>
Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D3184

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoedje: comparision with non-scaled min values issue fix.
Shilpa Singh [Mon, 19 Oct 2015 18:12:23 +0000 (11:12 -0700)]
edje: comparision with non-scaled min values issue fix.

Summary:
In a different scaling environment, wrong comparison of min values causes resize issue as original size is compared instead of scaled size.

Signed-off-by: Shilpa Singh <shilpa.singh@samsung.com>
Signed-off-by: Subodh Kumar <s7158.kumar@samsung.com>
@fix

Test Plan:
Create a layout with some min size and swallow a resizable layout inside the layout.
the parent layout will not expand even when the height has crossed its min size.

Reviewers: cedric, tasn, raster

Subscribers: subodh6129

Differential Revision: https://phab.enlightenment.org/D3185

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoedje: fix memory leak on realloc.
Srivardhan Hebbar [Mon, 19 Oct 2015 18:08:13 +0000 (11:08 -0700)]
edje: fix memory leak on realloc.

Summary: Signed-off-by: Srivardhan Hebbar <sri.hebbar@samsung.com>

Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D3186

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoevas table: fix miscalcuation in cells with span and padding
Jee-Yong Um [Mon, 19 Oct 2015 18:01:22 +0000 (11:01 -0700)]
evas table: fix miscalcuation in cells with span and padding

Summary:
In evas table that homogeneous mode is turned off,
the size of items in cells, whose rowspan or colspan is larger than 1
and horizontal or vertical padding exists, are miscalculatd.

T2655

@fix

Test Plan: elementary_test "Table Padding"

Reviewers: Hermet, cedric

Subscribers: cedric, DaveMDS, Hermet

Differential Revision: https://phab.enlightenment.org/D3192

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoevas: fix memory leak
perepelits.m [Mon, 19 Oct 2015 18:00:22 +0000 (11:00 -0700)]
evas: fix memory leak

Summary:
Fix of memory leak in evas_3d_utils.c

@fix

Reviewers: raster, Hermet, cedric

Reviewed By: cedric

Subscribers: artem.popov

Differential Revision: https://phab.enlightenment.org/D3196

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoEvas GL shaders: Simplify a bit the shaders code v1.16.0-beta2
Jean-Philippe Andre [Mon, 19 Oct 2015 11:04:20 +0000 (20:04 +0900)]
Evas GL shaders: Simplify a bit the shaders code

Following raster's change, the Program_Source struct is useless.
This is a big commit, again, but really all is auto-generated.

9 years agoelua: remove non-portable lconv fields (breaks windows)
Daniel Kolesa [Mon, 19 Oct 2015 10:52:03 +0000 (11:52 +0100)]
elua: remove non-portable lconv fields (breaks windows)

9 years agoEvas GL: Try to fix automated tests
Jean-Philippe Andre [Mon, 19 Oct 2015 10:31:10 +0000 (19:31 +0900)]
Evas GL: Try to fix automated tests

I forgot the #ifdef in the shaders. This might be it. @stefan,
try again please.

9 years agorelease: Update NEWS and bump version for 1.16.0-beta2 release
Stefan Schmidt [Mon, 19 Oct 2015 09:36:51 +0000 (11:36 +0200)]
release: Update NEWS and bump version for 1.16.0-beta2 release

9 years agoevas gl common - remove unused struct fields from shader src to save mem
Carsten Haitzler (Rasterman) [Mon, 19 Oct 2015 08:06:06 +0000 (17:06 +0900)]
evas gl common - remove unused struct fields from shader src to save mem

we use a bit more memory than we need by having unused fields for
shaders. the old binary data ptrs and size fields we just have not
used for years now as we dont compile in shader binaries anymore as no
living drivers need this anymore. so this removes that with no actual
side-effects.

9 years agoevas gl - fix big endian fully by adding a host of new img shaders
Carsten Haitzler (Rasterman) [Sun, 18 Oct 2015 09:45:11 +0000 (18:45 +0900)]
evas gl - fix big endian fully by adding a host of new img shaders

no shortcuts. we used the same img sharder for pixles as for native
surf. so need new shaders to do the swiszzling. add them all,
generation scripts metadata and enums etc.

@fix (along with previous 3 commits)

9 years agoevas bigendian fix - only fix img shaders as only these src pixels
Carsten Haitzler (Rasterman) [Sun, 18 Oct 2015 06:49:23 +0000 (15:49 +0900)]
evas bigendian fix - only fix img shaders as only these src pixels

9 years agoevas gl fix color on bigendian with gl engine
Carsten Haitzler (Rasterman) [Sun, 18 Oct 2015 03:49:11 +0000 (12:49 +0900)]
evas gl fix color on bigendian with gl engine

this fixes rendering on ppc (bigendian) where we have thnigs swizzled
oddly. not bgra -> argb but rgba -> grab ...

so generate a bigendian shader file and use if on bigendian.

this should fix T2721

it fixes it in the visual screenshots i can get remotely.

9 years agoeo - another 1.5 percent speedup in eo_bench eo_do by removing err handl
Carsten Haitzler (Rasterman) [Sat, 17 Oct 2015 02:42:46 +0000 (11:42 +0900)]
eo - another 1.5 percent speedup in eo_bench eo_do by removing err handl

so we do a bit of error handling like does a stack fail to allocate,
does setting the tls var fail, have the stack frames been nulled or
not allocated, etc. - these acutally cost every call because they mean
some extra compare and branches, but ore because they cause a lot fo
extra code to be generated, thus polluting instruction cache with code
and cacheline fetches of code that we rarely take - if ever.

every if () and DBG, ERR etc. does cost something. in really hotpath
code like this, i think it's best we realize that these checks will
basically never be triggered, because if a stack fails to grow... we
likely alreayd blew our REAL stack for the C/C++ side and that can't
allocate anymore and has already just crashed (no magic message there -
just segv). so in this case i think this checking is pointless and
just costs us rather than gets us anything.

9 years agoevas - clean if check to be a single return point for clarity
Carsten Haitzler (Rasterman) [Sat, 17 Oct 2015 02:19:06 +0000 (11:19 +0900)]
evas - clean if check to be a single return point for clarity

if (a) return;
if (b) return;

->

if ((a) || (b)) return;

9 years agoecore-evas-wayland: add frame callback listener during render
Mike Blumenkrantz [Fri, 16 Oct 2015 19:51:06 +0000 (15:51 -0400)]
ecore-evas-wayland: add frame callback listener during render

when a render occurs, frame callbacks must be managed in order to ensure
successful rendering for future frames. the best place to do this is in the
engine here, since this is the lowest-level place which has access to both
the wl_surface as well as the evas rendering state

ref T2784

9 years agoRevert "ecore-wayland: Redo window animators to not use Custom source animators"
Mike Blumenkrantz [Fri, 16 Oct 2015 19:49:30 +0000 (15:49 -0400)]
Revert "ecore-wayland: Redo window animators to not use Custom source animators"

This reverts commit bd83d4c03ab9f6f6ae225976b9595a1dfde61237.

adding an animator (and then not managing its ticks) causes the animator
to fire constantly. in this case, it was causing 100% cpu usage and forcing a
compositor re-render for every frame regardless of damages

9 years agoEo do: Reuse stack fetching across eo functions.
Tom Hacohen [Fri, 16 Oct 2015 15:23:48 +0000 (16:23 +0100)]
Eo do: Reuse stack fetching across eo functions.

This causes a significant speed up (around 10% here) and is definitely
worth it. The way it's done lets the compiler cache the value across
different eo_do calls, and across the parts of eo_do. Start and end.

This breaks ABI.

9 years agoEo do: optimise getting the thread call stack for the main loop thread.
Tom Hacohen [Fri, 16 Oct 2015 11:21:25 +0000 (12:21 +0100)]
Eo do: optimise getting the thread call stack for the main loop thread.

This may look like an insignificant change, but it doubles the speed of
this function, and since this function is called so often, it actually
improves my benchmarks by around 8%.

9 years agoEo: Move mainloop checks inside Eo.
Tom Hacohen [Fri, 16 Oct 2015 12:01:01 +0000 (13:01 +0100)]
Eo: Move mainloop checks inside Eo.

This breaks ABI in a harmless way, and it will give us the ability to
drastically improve Eo in the future without breaking ABI again, thus
allowing us to declare Eo stable for this release if we choose to.

9 years agoEo events: Add a struct member marking if it's a legacy event or not.
Tom Hacohen [Fri, 16 Oct 2015 10:42:37 +0000 (11:42 +0100)]
Eo events: Add a struct member marking if it's a legacy event or not.

My previous patch to this piece of code
(37f84b7e966372384e2dfe5d191a6f907a17962e), caused a significant
performance regression. This is such a hot path, that even accessing the
strings when we don't have to slows things down drastically. It makes
more sense to just store it in the structure.

This commit breaks ABI (though most people probably won't even need to
recompile anything else because of the memory layout).
It was discussed on IRC and was decided this is a big enough issue to
warrant a fix during the freeze.

@fix

9 years agoEvas GL: SW engine CID fixes
Jean-Philippe Andre [Fri, 16 Oct 2015 01:48:40 +0000 (10:48 +0900)]
Evas GL: SW engine CID fixes

Following previous changes, there was unreachable code.
- CID 1327421
- CID 1327420

9 years agoEvas: Fix image orientation with GL engine
Jean-Philippe Andre [Thu, 15 Oct 2015 11:09:11 +0000 (20:09 +0900)]
Evas: Fix image orientation with GL engine

Fixes T2738

Not sure what to do if yinvert is true. How to handle image
orientation then? Flip vertically on top of the current orientation?

9 years agoevas - add another layer->evas check in addition to layer
Carsten Haitzler (Rasterman) [Thu, 15 Oct 2015 23:27:10 +0000 (08:27 +0900)]
evas - add another layer->evas check in addition to layer

fixes T7215

9 years agoevas - was missing evlogs for the threaded rendering handling - fix
Carsten Haitzler (Rasterman) [Thu, 15 Oct 2015 08:58:17 +0000 (17:58 +0900)]
evas - was missing evlogs for the threaded rendering handling - fix

9 years agoedje: load - use evas_object_clipees_has instead of evas_object_clipees_get
Amitesh Singh [Thu, 15 Oct 2015 09:34:23 +0000 (15:04 +0530)]
edje: load - use evas_object_clipees_has instead of evas_object_clipees_get

evas_object_clipees_has is far cheaper than evas_object_clipees_get in case of checking if
clipees exist or not. This should improve the performance in case of large set of clipees.

@fix

9 years agoevas: render - use evas_object_clipees_has instead of evas_object_clipees_get
Amitesh Singh [Thu, 15 Oct 2015 09:30:11 +0000 (15:00 +0530)]
evas: render - use evas_object_clipees_has instead of evas_object_clipees_get

evas_object_clipees_has is far cheaper than evas_object_clipees_get in case of checking if
clipees exist or not. This should improve the performance in case of large set of clipees.

@fix

9 years agoTests: use eina_environment_tmp_get()
Vincent Torri [Thu, 15 Oct 2015 05:47:04 +0000 (07:47 +0200)]
Tests: use eina_environment_tmp_get()

9 years agoEvas GL: Add more tests
Jean-Philippe Andre [Thu, 15 Oct 2015 07:02:02 +0000 (16:02 +0900)]
Evas GL: Add more tests

- glReadPixels
- FBO test
- PBuffer test (only GL engine)
- surface formats test (up to depth=24, stencil=8)

9 years agoEvas GL: Add test case for surfaceless contexts
Jean-Philippe Andre [Wed, 14 Oct 2015 13:08:55 +0000 (22:08 +0900)]
Evas GL: Add test case for surfaceless contexts

9 years agoEvas GL: Add EGL_KHR_surfaceless_context since it is supported
Jean-Philippe Andre [Wed, 14 Oct 2015 12:46:34 +0000 (21:46 +0900)]
Evas GL: Add EGL_KHR_surfaceless_context since it is supported

See 3e39bf36389fdbc8a3f845214.
Surfaceless contexts are supported even if the driver does not
support them.

9 years agoEvas GL: Error out on surfaceless make_current with OSMesa
Jean-Philippe Andre [Wed, 14 Oct 2015 12:35:09 +0000 (21:35 +0900)]
Evas GL: Error out on surfaceless make_current with OSMesa

While OSMesa may support surfaceless contexts, we don't support
them yet in the SW engine. Instead of switching to NULL, NULL,
let's error out and do nothing instead.

9 years agoEvas GL: Don't call eglMakeCurrent if already null
Jean-Philippe Andre [Wed, 14 Oct 2015 12:32:11 +0000 (21:32 +0900)]
Evas GL: Don't call eglMakeCurrent if already null

If the current context & surface are already null, avoid
calling eglMakeCurrent again, since it can return an error
(EGL_FALSE but with no error code, thanks Nvidia).

9 years agoecore_imf/wayland: Add NULL check for text_input_manager.
Seunghun Lee [Thu, 15 Oct 2015 05:16:55 +0000 (14:16 +0900)]
ecore_imf/wayland: Add NULL check for text_input_manager.

Summary: this patch fixes crash caused by accessing the text_input_manager in wayland_im_context_add().

Test Plan: N/A

Reviewers: jihoon

Reviewed By: jihoon

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3176

9 years agoevas: no need to compute clippees list if we just want to know if there is any.
Cedric BAIL [Wed, 14 Oct 2015 22:54:41 +0000 (15:54 -0700)]
evas: no need to compute clippees list if we just want to know if there is any.

This is a partial fix for a terrible performance scenario where application take
forever to close with a large number of edje object.

@fix

9 years agoEo: Fix confusing indentation and style.
Tom Hacohen [Wed, 14 Oct 2015 19:42:19 +0000 (20:42 +0100)]
Eo: Fix confusing indentation and style.

9 years agoecore-evas-wayland: Don't use custom animators for frame callbacks
Chris Michael [Wed, 14 Oct 2015 18:56:17 +0000 (14:56 -0400)]
ecore-evas-wayland: Don't use custom animators for frame callbacks

Summary: As we now have per-window timer-based animators in
ecore_wayland for frame callbacks, we no longer should be using Custom
animators to handle surface frame callbacks

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoecore-wayland: Redo window animators to not use Custom source animators
Chris Michael [Wed, 14 Oct 2015 18:54:54 +0000 (14:54 -0400)]
ecore-wayland: Redo window animators to not use Custom source animators

Summary: This moves window animators (for frame callbacks) to not use
a custom animator source but rather use a timer-based source. This
also moves animators to be per-window based (in that an animator is
created per-window).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoecore: fix usage eina_condition_timedwait to use relative time instead of absolute...
Cedric BAIL [Wed, 14 Oct 2015 17:57:53 +0000 (10:57 -0700)]
ecore: fix usage eina_condition_timedwait to use relative time instead of absolute time.

This could lead to some very long and unexpected pause as the timeout passed
to eina_condition_timedwait was passed as a absolute time instead of relative.
Hopefully we don't build rocket.

9 years agoevas filter: silent coverity on self assignment
Amitesh Singh [Wed, 14 Oct 2015 15:34:52 +0000 (21:04 +0530)]
evas filter: silent coverity on self assignment

This is a false alarm. Just to make coverity happy, use eo_do
instead of eo_do_ret

CID: 1316017

9 years agoedje_edit: Fix clang warning of unused variables
Chris Michael [Wed, 14 Oct 2015 13:43:12 +0000 (09:43 -0400)]
edje_edit: Fix clang warning of unused variables

Summary: clang reports that these static variables are not being used
anywhere (and grep confirms this), so remove them.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoecore-evas-wayland-egl: Fix clang warning about extra parentheses
Chris Michael [Wed, 14 Oct 2015 13:39:52 +0000 (09:39 -0400)]
ecore-evas-wayland-egl: Fix clang warning about extra parentheses

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoecore-drm: Add missing field initializers for vt_mode
Chris Michael [Wed, 14 Oct 2015 13:37:20 +0000 (09:37 -0400)]
ecore-drm: Add missing field initializers for vt_mode

Summary: clang reports missing field initializers for usage of vt_mode
structure, so add the missing initializers

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoevas: Fix clang warning for missing field 'async' in default_state
Chris Michael [Wed, 14 Oct 2015 13:28:47 +0000 (09:28 -0400)]
evas: Fix clang warning for missing field 'async' in default_state

Evas_Object_Filter_Data has a bool for 'async' at the end of the
struct. This field was missing from the initialization of
'default_state'

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoEvas GL: Fix support for the SW engines (OSMesa)
Jean-Philippe Andre [Wed, 14 Oct 2015 10:42:49 +0000 (19:42 +0900)]
Evas GL: Fix support for the SW engines (OSMesa)

Since @raster changed the behaviour of the dirty flag on images,
damages must be added to redraw the GL surface. Evas_Image checks
if it is an Evas GL surface by looking at its native surface.
But in case of SW engine, there was no native surface information
for Evas GL surfaces. Also, the OPENGL surface type was awfully
abused for OSMesa support. Luckily EVASGL surface type lets us
pass arbitrary pointers :)

9 years agoEvas GL: Improve ERR log (direct rendering failed)
Jean-Philippe Andre [Wed, 14 Oct 2015 08:43:36 +0000 (17:43 +0900)]
Evas GL: Improve ERR log (direct rendering failed)

9 years agoEvas GL: Add a test case for Evas GL (make check)
Jean-Philippe Andre [Wed, 14 Oct 2015 08:30:25 +0000 (17:30 +0900)]
Evas GL: Add a test case for Evas GL (make check)

For now this only covers SOME of Evas GL's functions.

It will try to run with opengl_x11 and buffer (OSMesa). It'll also
try to fail silently if the engine initialization failed, or if
OSMesa could not be found. If the engines work, then Evas GL must
work properly.

9 years agoEvas GL: Implement glGetString wrapper for OSMesa
Jean-Philippe Andre [Wed, 14 Oct 2015 08:27:53 +0000 (17:27 +0900)]
Evas GL: Implement glGetString wrapper for OSMesa

This is only one step into making the software engine actually
work the same as a proper GL engine from Evas GL APIs point of view.

This is necessary for the test suite (coming next).

9 years agoEvas GL: Minor changes inside glGetString
Jean-Philippe Andre [Wed, 14 Oct 2015 08:27:23 +0000 (17:27 +0900)]
Evas GL: Minor changes inside glGetString

9 years agoEvas GL: Avoid make_current(0,0) during destroy
Jean-Philippe Andre [Wed, 14 Oct 2015 07:58:05 +0000 (16:58 +0900)]
Evas GL: Avoid make_current(0,0) during destroy

Show an error message and call make_current(NULL, NULL) only if
the object (context, surface) being destroyed is current.

Otherwise, avoid changing the current context & surface.

9 years agogl_x11: val can be everything expected 0 to mean true
Marcel Hollerbach [Wed, 14 Oct 2015 09:08:29 +0000 (11:08 +0200)]
gl_x11: val can be everything expected 0 to mean true

For me on a intel driver val is -1 and it needs to be inverted.
So we need to checkout that val is not 0 and not equals to 1.

Thx to raster for helping debugging this thing :).

9 years agoEina: fix memory leak in eina_file_open()
Vincent Torri [Wed, 14 Oct 2015 08:17:00 +0000 (10:17 +0200)]
Eina: fix memory leak in eina_file_open()

@fix

9 years agoEina: fix eina_file_current_directory_get()
Vincent Torri [Wed, 14 Oct 2015 07:58:19 +0000 (09:58 +0200)]
Eina: fix eina_file_current_directory_get()

the length was not correctly computed and eina_file_path_sanitize() was
was writing beyond the limit of the string

@fix

9 years agoEina: fix spelling in eina_tmpstr documentation
Vincent Torri [Wed, 14 Oct 2015 07:12:32 +0000 (09:12 +0200)]
Eina: fix spelling in eina_tmpstr documentation

9 years agoEvil: set EAPI correctly in pwd.h
Vincent Torri [Tue, 13 Oct 2015 18:45:33 +0000 (20:45 +0200)]
Evil: set EAPI correctly in pwd.h

9 years agoevas gl engine - typo remove from previous commit
Carsten Haitzler (Rasterman) [Wed, 14 Oct 2015 06:17:06 +0000 (15:17 +0900)]
evas gl engine - typo remove from previous commit

some typo crept in that... compiled. a stya / on a line. how it
compiled, i don't know.

9 years agoevas - obj destructrion - handle when obj layer is partly destroyed
Carsten Haitzler (Rasterman) [Wed, 14 Oct 2015 05:47:38 +0000 (14:47 +0900)]
evas - obj destructrion - handle when obj layer is partly destroyed

this should fix T2715 and anything similar as during destruction
object internals are a bit weird.

9 years agoevas - fix evlog to push and pop properly
Carsten Haitzler (Rasterman) [Tue, 13 Oct 2015 11:34:31 +0000 (20:34 +0900)]
evas - fix evlog to push and pop properly

9 years agoeina: util - set tmp to NULL to fix compilation warning
Amitesh Singh [Wed, 14 Oct 2015 03:48:01 +0000 (09:18 +0530)]
eina: util - set tmp to NULL to fix compilation warning

lib/eina/eina_util.c: In function 'eina_environment_tmp_get':
lib/eina/eina_util.c:96:7: warning: 'tmp' may be used uninitialized in this function [-Wmaybe-uninitialized]
    if (!tmp) tmp = "/tmp";
       ^

9 years agoEvas: Some coverity fixes
Jean-Philippe Andre [Wed, 14 Oct 2015 02:19:48 +0000 (11:19 +0900)]
Evas: Some coverity fixes

This are false alarms. But the explicit null check doesn't hurt.
Also, Coverity doesn't like eo_do_ret. Neither do I. :)

- CID 1327246
- CID 1327245

9 years agoEvas render: Fix proxy source_clip with source images
Jean-Philippe Andre [Tue, 13 Oct 2015 13:13:48 +0000 (22:13 +0900)]
Evas render: Fix proxy source_clip with source images

In case the source is an Evas_Image, we skip proxy_subrender,
and so the clip was not set against the source clip.

9 years agoEvas render: Fix proxy source_clip logic inversion
Jean-Philippe Andre [Tue, 13 Oct 2015 11:33:57 +0000 (20:33 +0900)]
Evas render: Fix proxy source_clip logic inversion

As spotted by @FurryMyad I inverted the logic for source_clip.
This should restore the proper behaviour while keeping my previous
fixes working. See D2940.

9 years agoecore_cocoa: fix a bug where event timestamp was not retrieved correctly.
Nicolas Aguirre [Tue, 6 Oct 2015 16:49:53 +0000 (18:49 +0200)]
ecore_cocoa: fix a bug where event timestamp was not retrieved correctly.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoevas: fix build of gl_cocoa engine.
Nicolas Aguirre [Thu, 24 Sep 2015 14:21:30 +0000 (16:21 +0200)]
evas: fix build of gl_cocoa engine.

__context_restore and __need_context_restore are undefined when
building gl_cocoa engine.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_cocoa: use a timer instead of a poller to be more responsive when dealing with...
Nicolas Aguirre [Thu, 6 Aug 2015 21:33:24 +0000 (23:33 +0200)]
ecore_cocoa: use a timer instead of a poller to be more responsive when dealing with cocoa Event.

As all Mouse and Keyboard events comme from Cocoa, the poll period must
be reduced. Backwards of this method is that when no signal are
received for a long period, the timer fired anyway and consumes CPU
for nothig but it seems there is no easy method to integrate NSApplication
mainloop into an existing one.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_evas_cocoa: use the same render function as ecore_evas_x
Nicolas Aguirre [Thu, 6 Aug 2015 17:05:14 +0000 (19:05 +0200)]
ecore_evas_cocoa: use the same render function as ecore_evas_x

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_cocoa: fix warnings, add Debug outputs where needed and remove printfs
Nicolas Aguirre [Thu, 6 Aug 2015 16:52:37 +0000 (18:52 +0200)]
ecore_cocoa: fix warnings, add Debug outputs where needed and remove printfs

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoeina: Include <unistd.h> for getuid and geteuid functions
Chris Michael [Tue, 13 Oct 2015 19:17:51 +0000 (15:17 -0400)]
eina: Include <unistd.h> for getuid and geteuid functions

Summary: If we do not include unistd.h, we end up with implicit
declaration warnings when compiling

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoecore-wl: Add missing EINA_UNUSED for unused function paramaters
Chris Michael [Tue, 13 Oct 2015 19:14:12 +0000 (15:14 -0400)]
ecore-wl: Add missing EINA_UNUSED for unused function paramaters

Signed-off-by: Chris Michael <cp.michael@samsung.com>
9 years agoevas: fix performance regression by reducing the unecessary memcpy we are doing.
Cedric BAIL [Tue, 13 Oct 2015 19:10:34 +0000 (12:10 -0700)]
evas: fix performance regression by reducing the unecessary memcpy we are doing.

Actually copying max is pretty useless and super slow. We usually have something
like 1024 slot in a context, but a very small amount of them are acutally active.
It would be better to actually do some kind of copy on write technique here, but
as Eina_Cow doesn't handle array and we are close to a release, let's be
conservative.

9 years agoevas: follow API documentation more closely.
Cedric BAIL [Tue, 13 Oct 2015 18:45:52 +0000 (11:45 -0700)]
evas: follow API documentation more closely.

9 years agoEcore exe win32: Fix double-free errors.
Tom Hacohen [Tue, 13 Oct 2015 13:31:29 +0000 (14:31 +0100)]
Ecore exe win32: Fix double-free errors.

As reported by vtorri, sometimes ecore_exe on win32 will encounter double
free issues. This was because the variable was freed, but not set to NULL
as expected by the cleanup function.

Fixes T2675

@fix

9 years agoRevert "Revert "Revert "evas: fix borked rotation support in GL engine."""
Carsten Haitzler (Rasterman) [Tue, 13 Oct 2015 10:43:18 +0000 (19:43 +0900)]
Revert "Revert "Revert "evas: fix borked rotation support in GL engine."""

This reverts commit f51168f4ec7a1bd3072428c7a271ad7c6715fde5.

if this is right or not... this RESULTS in enlightenment becoming
totally unusable. put this back WHEN other issues are fixed you think
that exist. last i knew we query yinvert start with glx per native
surface and use that info - so as best i know it is and has been right
for a long time.

:)

9 years agoevas: fix compilation error
Amitesh Singh [Tue, 13 Oct 2015 03:31:26 +0000 (09:01 +0530)]
evas: fix compilation error

This is introduced in 5c02935a866a5c14

9 years agoRevert "Revert "evas: fix borked rotation support in GL engine.""
Cedric BAIL [Tue, 13 Oct 2015 00:22:27 +0000 (17:22 -0700)]
Revert "Revert "evas: fix borked rotation support in GL engine.""

This reverts commit 5bb1c52e3a075d3a69b5baee2f2ad8d2788655b0.

This patch is actually correct, but it highlight a bug in how we
retrieve GLX_Y_INVERTED_EXT value.

9 years agoevas: correctly get GLX_Y_INVERTED_EXT.
Cedric BAIL [Tue, 13 Oct 2015 00:47:19 +0000 (17:47 -0700)]
evas: correctly get GLX_Y_INVERTED_EXT.

9 years agoecore: mimic UNIX code even more
Vincent Torri [Thu, 8 Oct 2015 20:32:57 +0000 (22:32 +0200)]
ecore: mimic UNIX code even more

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_exe: avoid thread doing nothing by adding a small sleep
Vincent Torri [Wed, 7 Oct 2015 03:54:41 +0000 (05:54 +0200)]
ecore_exe: avoid thread doing nothing by adding a small sleep

This fixes the CPU to be usedat 100% for each thread in ecore_exe. This
is obviously not an ideal fix and will be improved in the future.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoefreet: use ecore_file function instead of stat() in the icon cache code
Vincent Torri [Thu, 1 Oct 2015 06:45:51 +0000 (08:45 +0200)]
efreet: use ecore_file function instead of stat() in the icon cache code

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_file: remove whitespaces
Vincent Torri [Thu, 1 Oct 2015 05:32:33 +0000 (07:32 +0200)]
ecore_file: remove whitespaces

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_file: fix ecore_file management function on Windows
Vincent Torri [Thu, 1 Oct 2015 05:29:11 +0000 (07:29 +0200)]
ecore_file: fix ecore_file management function on Windows

On windows, stat() returns -1 if a path is finished with a \ or /,
so replace all stat() calls with a function which removes the trailing
slash or backslash on Windows

At this stage the code duplicate many code path for avoiding potential
borkage on Unix system. During 1.17 release cycle, it would be nice to
refactor this piece.

@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_exe: close handles only if they are valid
Vincent Torri [Tue, 29 Sep 2015 21:47:10 +0000 (23:47 +0200)]
ecore_exe: close handles only if they are valid

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoefreet: eina_file_mkstemp() needs a template with an extension
Vincent Torri [Tue, 29 Sep 2015 21:35:40 +0000 (23:35 +0200)]
efreet: eina_file_mkstemp() needs a template with an extension

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoefreet: use eina_file_mkstemp() instead of mkstemp() for portability
Vincent Torri [Tue, 29 Sep 2015 21:34:23 +0000 (23:34 +0200)]
efreet: use eina_file_mkstemp() instead of mkstemp() for portability

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoedje: use eina_environment_tmp_get() instead of the TMPDIR env variable
Vincent Torri [Tue, 29 Sep 2015 04:46:11 +0000 (06:46 +0200)]
edje: use eina_environment_tmp_get() instead of the TMPDIR env variable

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_exe: fix command line when a shell is used, and increase buffer to 32768 bytes
Vincent Torri [Sun, 27 Sep 2015 11:27:15 +0000 (13:27 +0200)]
ecore_exe: fix command line when a shell is used, and increase buffer to 32768 bytes

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_exe: remove infinite loop when killin process
Vincent Torri [Sun, 27 Sep 2015 10:15:04 +0000 (12:15 +0200)]
ecore_exe: remove infinite loop when killin process

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_exe: use macro to free resources
Vincent Torri [Sun, 27 Sep 2015 09:24:42 +0000 (11:24 +0200)]
ecore_exe: use macro to free resources

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
9 years agoecore_exe: better error message when child process can not be run
Vincent Torri [Sun, 27 Sep 2015 08:18:54 +0000 (10:18 +0200)]
ecore_exe: better error message when child process can not be run

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>