platform/upstream/efl.git
10 years agoallow --without-tests in addition to --with-tests=no
Mike Blumenkrantz [Sat, 25 Jan 2014 04:25:29 +0000 (23:25 -0500)]
allow --without-tests in addition to --with-tests=no

10 years agoconfigure: Add ecore-imf to ETHUMB_INTERNAL_LIBS
Ryuan Choi [Fri, 24 Jan 2014 11:14:23 +0000 (20:14 +0900)]
configure: Add ecore-imf to ETHUMB_INTERNAL_LIBS

It is to fix possible build break of ethumb

I got below message.
lib/edje/.libs/libedje.so: undefined reference to `ecore_imf_context_retrieve_selection_callback_set'
collect2: error: ld returned 1 exit status
make[4]: *** [bin/ethumb/ethumb] Error 1

10 years agoa small ecore_getopt bugfix
Daniel Kolesa [Fri, 24 Jan 2014 10:12:41 +0000 (10:12 +0000)]
a small ecore_getopt bugfix

10 years agoeina: fix test suite for rwlock... hopefully.
Cedric BAIL [Fri, 24 Jan 2014 03:00:32 +0000 (12:00 +0900)]
eina: fix test suite for rwlock... hopefully.

10 years agoautotools: let's not override what we just did.
Cedric BAIL [Fri, 24 Jan 2014 02:14:31 +0000 (11:14 +0900)]
autotools: let's not override what we just did.

10 years agoevas - textgrid - clear up unused var warning
Carsten Haitzler (Rasterman) [Fri, 24 Jan 2014 01:01:23 +0000 (10:01 +0900)]
evas - textgrid - clear up unused var warning

10 years agoevas: textgrid - fix crash in terminology with rare characters.
Jean-Philippe Andre [Fri, 24 Jan 2014 00:44:40 +0000 (09:44 +0900)]
evas: textgrid - fix crash in terminology with rare characters.

So I have a weird crash in terminology.
Reproduction path:
eet -x /path/to/elm/theme/default.edj edje/images/537

Scroll back in the terminal buffer, to show the entire file: CRASH.

Reviewers: cedric, tasn

CC: cedric, raster
Differential Revision: https://phab.enlightenment.org/D468

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
10 years agoembryo: force the insertion of a '/' in the path to be sure that file path make sense.
Cedric BAIL [Thu, 23 Jan 2014 23:17:53 +0000 (08:17 +0900)]
embryo: force the insertion of a '/' in the path to be sure that file path make sense.

10 years agoeina_tls: fix calls to TlsFree
Jérémy Zurcher [Thu, 23 Jan 2014 09:40:02 +0000 (10:40 +0100)]
eina_tls: fix calls to TlsFree

10 years agoRegisters a fallback handler for a given subsection of the object hierarchy.
Carsten Haitzler (Rasterman) [Thu, 23 Jan 2014 06:45:22 +0000 (15:45 +0900)]
Registers a fallback handler for a given subsection of the object hierarchy.

Summary:
Goal of this patch is cover in Eldbus library function dbus_connection_register_fallback.
http://dbus.freedesktop.org/doc/api/html/group__DBusConnection.html#gac4473b37bfa74ccf7459959d27e7bc59

Reviewers: stanluk, raster

Reviewed By: raster

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

10 years agoeina_tls: add eina_tls_cb_new(Eina_TLS *key, Eina_TLS_Delete_Cb delete_cb)
Jérémy Zurcher [Thu, 23 Jan 2014 05:50:08 +0000 (14:50 +0900)]
eina_tls: add eina_tls_cb_new(Eina_TLS *key, Eina_TLS_Delete_Cb delete_cb)

Summary:
   delete_cb is called at thread exit for each Eina_TLS keys used by the thread

Details:
   posix:
      pthread_key_create(key, delete_cb); does it
   win32/wince:
      eina_tls_free/new un/registers key&&cb into a static eina_list.
      eina_tls_set add the key to an eina_list in Eina_Thread_Win3.
      this list is cleared and callbacks are called in _eina_thread_join()

Test Plan: win32/wince has to be tested, I have no setup to do it.

Reviewers: cedric

CC: cedric
Differential Revision: https://phab.enlightenment.org/D489

10 years agoedje: Support to set or retrieve selection of ecore_imf
Jihoon Kim [Thu, 23 Jan 2014 02:26:52 +0000 (11:26 +0900)]
edje: Support to set or retrieve selection of ecore_imf

10 years agoecore_imf: fix to call function of immodule when the input method property is changed
Jihoon Kim [Thu, 23 Jan 2014 02:19:54 +0000 (11:19 +0900)]
ecore_imf: fix to call function of immodule when the input method property is changed

10 years agoecore_imf: Add selection_set callback type to allow Input Method to select a region...
Jihoon Kim [Thu, 23 Jan 2014 02:02:51 +0000 (11:02 +0900)]
ecore_imf: Add selection_set callback type to allow Input Method to select a region of text

10 years agoAdd ecore_imf_context_selection_get API to allow Input Method to get the selected...
Jihoon Kim [Thu, 23 Jan 2014 01:44:00 +0000 (10:44 +0900)]
Add ecore_imf_context_selection_get API to allow Input Method to get the selected text.

10 years agoembryo_cc - remove trainling / from path for windows stat so it works
Carsten Haitzler (Rasterman) [Wed, 22 Jan 2014 23:45:44 +0000 (08:45 +0900)]
embryo_cc - remove trainling / from path for windows stat so it works

10 years agoEvas: Fix proxy rendering for animated objects
Jean-Philippe Andre [Wed, 22 Jan 2014 07:40:50 +0000 (16:40 +0900)]
Evas: Fix proxy rendering for animated objects

An invalid optimization was implemented in proxy rendering.
We can't assume a proxy is a smart object.

Refer to 5cefa00d0ad0f54.

Fixes T832.

Proxy rendering is still broken when using cserve2... :(

10 years agoeina: do not access dead pointer from within valgrind macro.
Cedric BAIL [Wed, 22 Jan 2014 03:21:43 +0000 (12:21 +0900)]
eina: do not access dead pointer from within valgrind macro.

10 years agoximimmodule: fix dereference after null check
Jihoon Kim [Wed, 22 Jan 2014 00:46:24 +0000 (09:46 +0900)]
ximimmodule: fix dereference after null check

CID 1162749:  Dereference after null check  (FORWARD_NULL)
/src/modules/ecore_imf/xim/ecore_imf_xim.c: 1027 in _ecore_imf_xim_preedit_draw_call()

10 years agookay, bring back xrandr < 1.4 compat for ecore_x_randr_output_name_get
Mike Blumenkrantz [Tue, 21 Jan 2014 21:07:38 +0000 (16:07 -0500)]
okay, bring back xrandr < 1.4 compat for ecore_x_randr_output_name_get

apparently I read the commit order wrong and this fix went in for 1.4.0, not 1.3.2, which means anyone who has 1.3.2 has been having lots of fun crashes for the past 24 hours

10 years agonul terminate string from ecore_x_randr_output_name_get
Mike Blumenkrantz [Tue, 21 Jan 2014 19:58:06 +0000 (14:58 -0500)]
nul terminate string from ecore_x_randr_output_name_get

10 years agoSynced libunibreak local copy with upstream.
Tom Hacohen [Tue, 21 Jan 2014 16:41:06 +0000 (16:41 +0000)]
Synced libunibreak local copy with upstream.

This fixes T805.

10 years agoEvas: Fix MMX mask function _op_copy_p_mas_dp_mmx()
Jean-Philippe Andre [Tue, 21 Jan 2014 06:30:35 +0000 (15:30 +0900)]
Evas: Fix MMX mask function _op_copy_p_mas_dp_mmx()

This function does the following operation:
COPY pixel x mask --> dst

But it wasn't iterating over the source. So it was repeating
the value of the first pixel over and over again.

Is this even used anywhere? RGBA + alpha mask function!?

10 years agoecore_x_randr_output_name_get fixme removed
Mike Blumenkrantz [Tue, 21 Jan 2014 03:00:47 +0000 (22:00 -0500)]
ecore_x_randr_output_name_get fixme removed

this was a fixme which was likely written sometime before July 2010 when the bug was fixed, just prior to the 1.3.1 release. I think it's probably okay to require that release since it's been 3+ years.

10 years agoRevert "eet: do not load data when the file is open in read/write mode."
Carsten Haitzler (Rasterman) [Tue, 21 Jan 2014 00:18:52 +0000 (09:18 +0900)]
Revert "eet: do not load data when the file is open in read/write mode."

This reverts commit f8b0322704a4d74e4a5545727c18dc8385318657.

this breaks efreets icon cache. i have been noticing this since
yesterday across all my machines once i update just efl. i tracked it
down to this commit.

10 years ago_op_blend_c_dp_neon miscalculation fix
Carsten Haitzler (Rasterman) [Mon, 20 Jan 2014 15:11:33 +0000 (00:11 +0900)]
_op_blend_c_dp_neon miscalculation fix

Summary:
When processing random data result of this function differs from C variant in more than 50% cases.
This difference is due to alpha calculation, in C code :

 a = 256 - (c >> 24)

in NEON:

"vmvn.u8  q7,q6       \n\t"
// ie (8 bit)~(c>>24)    ===   255 - (c>>24)

We cant just add "1" as overflow will occur in case (c>>24) ==  0  (we use only 8 bit per channel in vector registers)
So here is the solution:
copy *d right before multiplication and add it to the result of it later.

This makes the function slower by 20-30% but it is still at least 2 times faster then C code.

Reviewers: raster

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

10 years agoeet_data: guarantee double-word alignment for temporary stack buffer.
Gustavo Sverzut Barbieri [Mon, 20 Jan 2014 23:37:09 +0000 (21:37 -0200)]
eet_data: guarantee double-word alignment for temporary stack buffer.

The code was giving enough memory to store doubles and longs, but they
could be unaligned as "unsigned char" allows 1-byte alignment, while
double may require 8 bytes.

By specifying the array as "long long" we force certain alignment in a
platform independent way. As this array is small enough and
short-lived, the number of items were not changed, this results in
more bytes on the stack but it shouldn't matter.

10 years agoeina/mp/one_big: fix alignment issues.
Gustavo Sverzut Barbieri [Mon, 20 Jan 2014 23:27:58 +0000 (21:27 -0200)]
eina/mp/one_big: fix alignment issues.

When over-allocating (past "pool->max" items) a memory slice will be
allocated to the new item as a linked list using Eina_Inlist.

The original code was placing the Eina_Inlist structure (3 pointers)
at the beginning of the allocated memory. However the item must have
proper alignment based on "pool->item_size", otherwise a structure may
end with unaligned members. Take for example MIPS 32 bits, it uses 4
bytes pointers with 8 bytes double. A structure containing a double
could have it unaligned as 12 % 8 = 4 (12 is the size of Eina_Inlist,
that contains 3 pointers), and MIPS doesn't allow unaligned access.

Albin Tonnerre (Lutin) spotted this in his Debian MIPS test machine,
it was breaking at eet_data_get_double() that was storing an unaligned
double. This was being called from within edje test suite.

The current code will place the list node after the requested
"pool->item_size", of course guaranteeing the pointer inside the node
is aligned (otherwise a "char" or "short" would break its alignment).

10 years agoecore_getopt: support for per-category help listing
Daniel Kolesa [Mon, 20 Jan 2014 17:10:21 +0000 (17:10 +0000)]
ecore_getopt: support for per-category help listing

10 years agoconfigure: include required NEON build flags.
Gustavo Sverzut Barbieri [Mon, 20 Jan 2014 14:15:56 +0000 (12:15 -0200)]
configure: include required NEON build flags.

It is required to use "-mfpu=neon" to build NEON.

Patch-by: Albin Tonnerre <lutin@debian.org>
10 years ago[ecore_x] Fix to handle paste null data case.
Jaehyun Cho [Mon, 20 Jan 2014 13:15:33 +0000 (22:15 +0900)]
[ecore_x] Fix to handle paste null data case.

Summary: Do nothing when null data is pasted.

Reviewers: Hermet, raster

Reviewed By: raster

CC: seoz, raster, cedric
Differential Revision: https://phab.enlightenment.org/D473

10 years agoecore - fix CRIT -> CRI macro
Carsten Haitzler (Rasterman) [Mon, 20 Jan 2014 11:23:22 +0000 (20:23 +0900)]
ecore - fix CRIT -> CRI macro

10 years agoedje: Call _edje_entry_imf_context_reset in _edje_entry_user_insert.
Youngbok Shin [Mon, 20 Jan 2014 06:59:50 +0000 (15:59 +0900)]
edje: Call _edje_entry_imf_context_reset in _edje_entry_user_insert.

Summary:
When user paste text to elm_entry, _edje_entry_user_insert is called.
We need to reset a prediction buffer just like _edje_entry_text_markup_insert.

Reviewers: seoz, Hermet, woohyun, tasn, jihoon, raster

Reviewed By: raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D461

10 years agoeina-inlist - handle prepend/append relative if list is null (empty)
Carsten Haitzler (Rasterman) [Mon, 20 Jan 2014 06:16:56 +0000 (15:16 +0900)]
eina-inlist - handle prepend/append relative if list is null (empty)

stable release - cherry-pick me!

10 years agoeet: do not load data when the file is open in read/write mode.
Cedric BAIL [Mon, 20 Jan 2014 03:03:02 +0000 (12:03 +0900)]
eet: do not load data when the file is open in read/write mode.

I do think that it was a left over from previous file format. Removing
this memcpy should make Enlightenment startup faster and should reduce
by 500KB the memory it use.

10 years agoeina: add eina_{str,bin}buf_manage_read_only_new_length().
Cedric BAIL [Thu, 2 Jan 2014 06:36:23 +0000 (15:36 +0900)]
eina: add eina_{str,bin}buf_manage_read_only_new_length().

It is sometime useful to start from a defined buffer, but to not touch it
until needed. This make life of caller more easier as they don't need to
duplicate the buffer themself as Eina will now take care of that.

10 years agoeina: add eina_binbuf_append_buffer() and eina_strbuf_append_buffer().
Cedric BAIL [Thu, 2 Jan 2014 03:16:26 +0000 (12:16 +0900)]
eina: add eina_binbuf_append_buffer() and eina_strbuf_append_buffer().

10 years agoeet: reduce memory usage of Eet internal structure by removing useless structure.
Cedric BAIL [Fri, 17 Jan 2014 09:55:14 +0000 (18:55 +0900)]
eet: reduce memory usage of Eet internal structure by removing useless structure.

10 years agoedje: Add changed signal emit in _edje_entry_imf_event_delete_surrounding_cb
Youngbok Shin [Mon, 20 Jan 2014 03:54:45 +0000 (12:54 +0900)]
edje: Add changed signal emit in _edje_entry_imf_event_delete_surrounding_cb

Summary:
"_edje_entry_imf_event_delete_surrounding_cb" changes text of entry.
When the callback function is called and the entry is changed,
we need to notice to applications that the entry is changed.

Reviewers: seoz, Hermet, tasn, woohyun, jihoon, raster

Reviewed By: raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D460

10 years agoedje_cc: factorize two strlen()s
Jean Guyomarc'h [Mon, 20 Jan 2014 03:47:46 +0000 (12:47 +0900)]
edje_cc: factorize two strlen()s

Reviewers: cedric, raster

Reviewed By: raster

CC: cedric
Differential Revision: https://phab.enlightenment.org/D454

10 years agoecore_evas_wayland_common: fix compilation, missing bits of 892b1c5
Jérémy Zurcher [Sun, 19 Jan 2014 18:41:27 +0000 (19:41 +0100)]
ecore_evas_wayland_common: fix compilation, missing bits of 892b1c5

10 years agoFix doxy typo
Chris Michael [Thu, 16 Jan 2014 09:23:19 +0000 (09:23 +0000)]
Fix doxy typo

Signed-off-by: Chris Michael <devilhorns@comcast.net>
10 years agoecore_evas - applied macro to check rotation state.
ChunEon Park [Sat, 18 Jan 2014 13:26:10 +0000 (22:26 +0900)]
ecore_evas - applied macro to check rotation state.

also, let the potrait compare on the higher priority.

if you can suggest better macro name, then please modify it.

10 years agoRevert "ecore_evas - use the macro orthogonal check."
ChunEon Park [Sat, 18 Jan 2014 13:04:25 +0000 (22:04 +0900)]
Revert "ecore_evas - use the macro orthogonal check."

This reverts commit 43acf1e82f94dcdca25d6781d8b27b015f4bd656.

some partial changes are incorrectly applied.

10 years agoecore_evas - use the macro orthogonal check.
ChunEon Park [Sat, 18 Jan 2014 12:53:56 +0000 (21:53 +0900)]
ecore_evas - use the macro orthogonal check.

10 years agoefl - updated AUTHORS
ChunEon Park [Sat, 18 Jan 2014 10:12:45 +0000 (19:12 +0900)]
efl - updated AUTHORS

10 years agoevas: Fixed to compare current render_op with previous render_op for textblock. If...
Youngbok Shin [Sat, 18 Jan 2014 10:06:16 +0000 (19:06 +0900)]
evas: Fixed to compare current render_op with previous render_op for textblock. If the render_op is changed, call evas_object_render_pre_prev_cur_add.

Summary: This change is related to the commit: cdb86e34bbf82bd91aefd686bfc3bdf2a018a956

Reviewers: woohyun, tasn, Hermet, seoz

CC: cedric
Differential Revision: https://phab.enlightenment.org/D450

10 years agoefl/ecore_con - compare same types.
ChunEon Park [Sat, 18 Jan 2014 09:50:51 +0000 (18:50 +0900)]
efl/ecore_con - compare same types.

10 years agoefl/emotion - added missing headers for getuid() geteuid().
ChunEon Park [Sat, 18 Jan 2014 09:49:27 +0000 (18:49 +0900)]
efl/emotion - added missing headers for getuid() geteuid().

10 years agopkgbuild -> luajit
Carsten Haitzler (Rasterman) [Sat, 18 Jan 2014 00:25:43 +0000 (09:25 +0900)]
pkgbuild -> luajit

10 years agoedje: use luajit by default, if you want lua use --enable-lua-old
Daniel Kolesa [Fri, 17 Jan 2014 19:07:59 +0000 (19:07 +0000)]
edje: use luajit by default, if you want lua use --enable-lua-old

10 years agoEvas cserve2: Fix invalid memory access
Jean-Philippe Andre [Fri, 17 Jan 2014 09:07:33 +0000 (18:07 +0900)]
Evas cserve2: Fix invalid memory access

In case of load error, we free the file entry, but forgot to
reset the pointer to it in the image entry.

10 years agoedje: use EINA_UNUSED instead of __UNUSED__
Jihoon Kim [Fri, 17 Jan 2014 09:51:36 +0000 (18:51 +0900)]
edje: use EINA_UNUSED instead of __UNUSED__

10 years agoemotion: Use the GStreamer 1.x module instead of the 0.10 one in the border example...
Sebastian Dröge [Fri, 17 Jan 2014 08:32:45 +0000 (09:32 +0100)]
emotion: Use the GStreamer 1.x module instead of the 0.10 one in the border example application

10 years agoemotion gstreamer1: Call _emotion_frame_new() for audio-only streams without visualis...
Sebastian Dröge [Thu, 16 Jan 2014 21:43:23 +0000 (22:43 +0100)]
emotion gstreamer1: Call _emotion_frame_new() for audio-only streams without visualisations too

Without this applications are not notified of any progress.

https://phab.enlightenment.org/T767

10 years agoedje_entry: When preediting, cursor should not be moved.
WooHyun Jung [Thu, 16 Jan 2014 07:31:36 +0000 (16:31 +0900)]
edje_entry: When preediting, cursor should not be moved.

10 years agoecore_getopt: support for categories
Daniel Kolesa [Wed, 15 Jan 2014 20:22:27 +0000 (20:22 +0000)]
ecore_getopt: support for categories

10 years agoFix ecore_con example file to call shutdown functions.
Guillaume Friloux [Wed, 15 Jan 2014 19:42:50 +0000 (20:42 +0100)]
Fix ecore_con example file to call shutdown functions.

Found by Chris Michael.

10 years agoecore_x_gesture: Cast maek pointer correctly.
Daniel Juyung Seo [Wed, 15 Jan 2014 11:47:49 +0000 (20:47 +0900)]
ecore_x_gesture: Cast maek pointer correctly.

Confirmed by the original author of libxgesture, Sungjin Park.

10 years agoTextblock: Add test cases for style padding
Jean-Philippe Andre [Fri, 10 Jan 2014 02:15:48 +0000 (11:15 +0900)]
Textblock: Add test cases for style padding

In the previous commit, style padding has been changed, so
that lines don't get extra space just because there's a special
style (glow, ...)

This adds some test cases that check the actual geometry of the
lines relatively to each other.

NOTE: This test does not fail before the padding commits, as
_relayout_if_needed() adjusts the padding properly.

10 years agoTextblock: Relayout if needed in line geometry get
Jean-Philippe Andre [Fri, 10 Jan 2014 02:43:04 +0000 (11:43 +0900)]
Textblock: Relayout if needed in line geometry get

evas_object_textblock_line_number_geometry_get() did not trigger
a relayout, so it could end up returning FALSE and invalid values.

10 years agoTextblock: Fix padding with styles (part 2)
Jean-Philippe Andre [Wed, 8 Jan 2014 07:39:46 +0000 (16:39 +0900)]
Textblock: Fix padding with styles (part 2)

Summary:
If ONE single item in the whole textblock has a padding of k,
then ALL the lines of the textblock will be padded by k pixels.

Here's a solution to add the padding only to the first line.

Test Plan:
Write any multiline text, without styles, in an entry.
Add some glow to one element. All lines should be spaced by
an extra 2 pixels.

Reviewers: tasn

CC: cedric
Differential Revision: https://phab.enlightenment.org/D442

10 years agoTextblock: Fix padding computation (part 1)
Jean-Philippe Andre [Wed, 8 Jan 2014 06:28:49 +0000 (15:28 +0900)]
Textblock: Fix padding computation (part 1)

Track padding per paragraph, since this is how it is computed.

Problem before this patch:
- If markup text is changed, padding may grow, and the layout is updated (good)
- If the UI itself needs a relayout, the old padding value is NOT reused,
so style paddings will reset the padding to 0.

Test protocol:
- Set some text with style=glow. The whole object should have padding 2,2,2,2
- Relayout the UI, the whole object will have padding 0,0,0,0 (should be 2,2,2,2)

10 years agoecore_x: set cursor with xinput2
Sebastian Dransfeld [Wed, 15 Jan 2014 07:29:05 +0000 (08:29 +0100)]
ecore_x: set cursor with xinput2

For some reason XDefineCursor might malfunction when using xinput2. So
when using xinput2, use XIDefineCursor. Also see:

https://bugs.launchpad.net/compiz/+bug/1179155

10 years agoEvas/cserve2: Add some safety checks when reading socket messages
Jean-Philippe Andre [Tue, 14 Jan 2014 08:36:54 +0000 (17:36 +0900)]
Evas/cserve2: Add some safety checks when reading socket messages

Fixes CID 1039571 and 1039572.

10 years agoEvas/cserve2: Remove dead code
Jean-Philippe Andre [Tue, 14 Jan 2014 08:11:40 +0000 (17:11 +0900)]
Evas/cserve2: Remove dead code

Fixes CID 1039925.

10 years agoecore xcim module - don't printf every time you start to add stdout noise
Carsten Haitzler (Rasterman) [Wed, 15 Jan 2014 00:55:05 +0000 (09:55 +0900)]
ecore xcim module - don't printf every time you start to add stdout noise

10 years agoecore ecore_x_e: check 0 and -1 for ecore_x_window_prop_window_get(). According to...
Seunghun Lee [Tue, 14 Jan 2014 09:48:16 +0000 (18:48 +0900)]
ecore ecore_x_e: check 0 and -1 for ecore_x_window_prop_window_get(). According to note for ecore_x_window_prop_window_get() :

Summary:
If the property was successfully fetched the number of items stored in
val is returned, otherwise -1 is returned.
Note: Return value 0 means that the property exists but has no elements.

Reviewers: seoz

Reviewed By: seoz

CC: cedric
Differential Revision: https://phab.enlightenment.org/D457

10 years agoEvas/cserve2: Stop looking at those dirty pics!
Jean-Philippe Andre [Tue, 14 Jan 2014 04:59:27 +0000 (13:59 +0900)]
Evas/cserve2: Stop looking at those dirty pics!

What I mean is erm... images marked as dirty don't have a
cache_key, and that's perfectly fine when the image file
has changed.

10 years agoEvas/cserve2: Fix potential crash in image_free
Jean-Philippe Andre [Tue, 14 Jan 2014 04:42:17 +0000 (13:42 +0900)]
Evas/cserve2: Fix potential crash in image_free

Don't try to free an object that was already freed.
Basically, allow image_free(NULL).

10 years agoEio monitor: Fix crash on invalid data access
Jean-Philippe Andre [Tue, 14 Jan 2014 04:33:16 +0000 (13:33 +0900)]
Eio monitor: Fix crash on invalid data access

Fix race condition when touching/changing a (theme) file often.
An Eio_Monitor was marked as "delete_me" but the rename callback
was still called, leading to memory access to already freed
objects.

Test protocol was:
ELM_THEME=~/default.edj elementary_test &
watch touch ~/default.edj

10 years agoEvas/cserve2: Keep image_id when reopening a changed file
Jean-Philippe Andre [Mon, 13 Jan 2014 08:42:14 +0000 (17:42 +0900)]
Evas/cserve2: Keep image_id when reopening a changed file

If a file had changed, a new OPEN message was sent, and the
client image ID was then changed, but the LOAD message was
sent with the previous image ID. So cserve2 would not be
able to honor that request.

10 years agoEvas/cserve2: Clear up File_Data when opening a new image
Jean-Philippe Andre [Mon, 13 Jan 2014 08:22:50 +0000 (17:22 +0900)]
Evas/cserve2: Clear up File_Data when opening a new image

After a file changed, the "changed" flag was not reset in the
File_Data structure, although it was supposed to represent a
new entry altogether.

10 years agoEvas/cserve2: Rename "invalid" field to "changed"
Jean-Philippe Andre [Mon, 13 Jan 2014 08:17:36 +0000 (17:17 +0900)]
Evas/cserve2: Rename "invalid" field to "changed"

This flag indicates that a file changed, not that the entry
is invalid. There is another "valid" flag already.

10 years agoEvas/cserve2: Improve error messages a bit
Jean-Philippe Andre [Mon, 13 Jan 2014 08:15:20 +0000 (17:15 +0900)]
Evas/cserve2: Improve error messages a bit

10 years agoEvas/cserve2: Add another load error check
Jean-Philippe Andre [Mon, 13 Jan 2014 06:52:00 +0000 (15:52 +0900)]
Evas/cserve2: Add another load error check

This one is very unlikely as it would mean the image is
invalid while being in the hash.

10 years agoEvas/cserve2: Fix crash on image file change
Jean-Philippe Andre [Mon, 13 Jan 2014 06:42:14 +0000 (15:42 +0900)]
Evas/cserve2: Fix crash on image file change

When an image file is changed, it is discarded from cserve2,
so the references become invalid. In case we were loading a
scaled version of that image, no proper error checking was
done, leading to obvious crashes.

10 years agoEvas/cserve2: Reduce error logs on invalid glyph load
Jean-Philippe Andre [Mon, 13 Jan 2014 06:06:48 +0000 (15:06 +0900)]
Evas/cserve2: Reduce error logs on invalid glyph load

Change message level from ERR to WRN, when a glyph is not
loadable because FT fails to load it or it contains 0 pixel.

cserve2 used to complain about invalid glyph 3, on a few fonts

10 years agoEvas/cserve2: Fix crash in server on file change
Jean-Philippe Andre [Mon, 13 Jan 2014 05:21:44 +0000 (14:21 +0900)]
Evas/cserve2: Fix crash in server on file change

An inotify callback is triggered when an image file changes,
and it is supposed to cleanup all references to this image.

Unfortunately, it was doing it in a very unsafe way as pointers
could become invalid, because of hash free callbacks in the
referenced image list. Add some list safety and always assume
the pointer might be dead after free operations.

TBH, this _file_changed_cb function looks very confused to me
(as it tries to bypass eina_hash_del).

10 years agoEvas/cserve2: Fix memleak during shutdown
Jean-Philippe Andre [Mon, 13 Jan 2014 02:58:16 +0000 (11:58 +0900)]
Evas/cserve2: Fix memleak during shutdown

Don't reset the dead slave callback, as it is used to free the
slave worker's resources.

10 years agoEvas/cserve2: Use calloc instead of malloc
Jean-Philippe Andre [Mon, 13 Jan 2014 02:44:21 +0000 (11:44 +0900)]
Evas/cserve2: Use calloc instead of malloc

This will silence some warnings from valgrind (and add some
safety as well...)

10 years agoecore-x present fixups
Mike Blumenkrantz [Mon, 13 Jan 2014 17:14:50 +0000 (12:14 -0500)]
ecore-x present fixups

10 years agoecore-x now supports XPRESENT
Mike Blumenkrantz [Fri, 10 Jan 2014 07:26:06 +0000 (02:26 -0500)]
ecore-x now supports XPRESENT

see http://cgit.freedesktop.org/xorg/proto/presentproto/plain/presentproto.txt

10 years agoecore_evas_win32: Fix build regression in ecore evas win32 engine
Stefan Schmidt [Mon, 13 Jan 2014 12:36:28 +0000 (13:36 +0100)]
ecore_evas_win32: Fix build regression in ecore evas win32 engine

Regression introduced with fb59ac34a1ec65680ca4ff3fc62d1fc42aa72f5a
Simple typo during Eina_Bool convertion.

10 years agoemotion gstreamer1: Set visualizations if the vis name is not NULL
Sebastian Dröge [Mon, 13 Jan 2014 09:02:34 +0000 (10:02 +0100)]
emotion gstreamer1: Set visualizations if the vis name is not NULL

and not the other way around.

10 years agoemotion gstreamer1: Also handle DATE_TIME tag
Sebastian Dröge [Sun, 12 Jan 2014 19:44:41 +0000 (20:44 +0100)]
emotion gstreamer1: Also handle DATE_TIME tag

10 years agoemotion gstreamer1: Fix wrong FIXME comment
Sebastian Dröge [Sun, 12 Jan 2014 19:42:49 +0000 (20:42 +0100)]
emotion gstreamer1: Fix wrong FIXME comment

10 years agoemotion gstreamer1: Don't forget to allocate metadata struct
Sebastian Dröge [Sun, 12 Jan 2014 19:42:01 +0000 (20:42 +0100)]
emotion gstreamer1: Don't forget to allocate metadata struct

10 years agoemotion gstreamer1: Implement seekability check via seeking query
Sebastian Dröge [Sun, 12 Jan 2014 19:36:14 +0000 (20:36 +0100)]
emotion gstreamer1: Implement seekability check via seeking query

10 years agoemotion gstreamer1: Add support for selecting subtitle channels
Sebastian Dröge [Sun, 12 Jan 2014 19:31:19 +0000 (20:31 +0100)]
emotion gstreamer1: Add support for selecting subtitle channels

10 years agoemotion gstreamer1: Volumes > 1.0 are valid too
Sebastian Dröge [Sun, 12 Jan 2014 19:29:32 +0000 (20:29 +0100)]
emotion gstreamer1: Volumes > 1.0 are valid too

10 years agoemotion gstreamer1: Add support for buffering and clock-lost handling
Sebastian Dröge [Sun, 12 Jan 2014 19:28:50 +0000 (20:28 +0100)]
emotion gstreamer1: Add support for buffering and clock-lost handling

10 years agoemotion gstreamer1: Major cleanup of internal and GStreamer state handling
Sebastian Dröge [Sun, 12 Jan 2014 19:25:01 +0000 (20:25 +0100)]
emotion gstreamer1: Major cleanup of internal and GStreamer state handling

10 years agoemotion gstreamer1: Don't set pipeline to PAUSED during seeking
Sebastian Dröge [Sun, 12 Jan 2014 18:33:57 +0000 (19:33 +0100)]
emotion gstreamer1: Don't set pipeline to PAUSED during seeking

This is not required and is handled transparently inside GStreamer
already.

10 years agoemotion gstreamer1: Use GST_PLAY_FLAG_VIS instead of the corresponding integer
Sebastian Dröge [Sun, 12 Jan 2014 18:26:08 +0000 (19:26 +0100)]
emotion gstreamer1: Use GST_PLAY_FLAG_VIS instead of the corresponding integer

10 years agoemotion gstreamer1: Don't use the NATIVE_AUDIO/VIDEO flags
Sebastian Dröge [Sun, 12 Jan 2014 18:21:57 +0000 (19:21 +0100)]
emotion gstreamer1: Don't use the NATIVE_AUDIO/VIDEO flags

There are too many video formats we don't handle, so we should let GStreamer
handle the conversion if necessary.

10 years agoemotion gstreamer1: Use refcounting instead of in/out variable counting
Sebastian Dröge [Sun, 12 Jan 2014 18:18:37 +0000 (19:18 +0100)]
emotion gstreamer1: Use refcounting instead of in/out variable counting

10 years agoemotion gstreamer1: Simplify pipeline creation
Sebastian Dröge [Sun, 12 Jan 2014 18:16:58 +0000 (19:16 +0100)]
emotion gstreamer1: Simplify pipeline creation

Also remove the webcam support, this could've never worked and
needs to be handled differently.

10 years agoemotion gstreamer1: Some code re-flow in the GStreamer bus handler
Sebastian Dröge [Sun, 12 Jan 2014 11:59:03 +0000 (12:59 +0100)]
emotion gstreamer1: Some code re-flow in the GStreamer bus handler

10 years agoemotion gstreamer1: Use GStreamer's path/URI handling functions instead of writing...
Sebastian Dröge [Sun, 12 Jan 2014 11:54:52 +0000 (12:54 +0100)]
emotion gstreamer1: Use GStreamer's path/URI handling functions instead of writing our own