Commit Graph

32812 Commits

Author SHA1 Message Date
Mike Blumenkrantz 6eff8ab5ba edje_cc: move part desc free function within file
no funcitonal changes
2015-12-16 14:38:33 -05:00
Mike Blumenkrantz b14a06b040 edje_cc: terminate filter file scripts
==24030== Invalid read of size 1
==24030==    at 0x4A0AC77: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x598A9DC: _eet_dictionary_lookup (eet_dictionary.c:69)
==24030==    by 0x598AA93: eet_dictionary_string_add (eet_dictionary.c:103)
==24030==    by 0x598107B: eet_data_put_string (eet_data.c:857)
==24030==    by 0x598213F: eet_data_put_type (eet_data.c:1433)
==24030==    by 0x59895AB: eet_data_put_unknown (eet_data.c:4798)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x59894A4: eet_data_put_array (eet_data.c:4760)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5989617: eet_data_put_unknown (eet_data.c:4807)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5983E06: eet_data_write_cipher (eet_data.c:2396)
==24030==    by 0x5983E92: eet_data_write (eet_data.c:2412)
==24030==    by 0x406BC2: data_thread_head (edje_cc_out.c:674)
==24030==    by 0x406D51: data_write_header (edje_cc_out.c:717)
==24030==    by 0x40B52E: data_write (edje_cc_out.c:2439)
==24030==    by 0x40563D: main (edje_cc.c:399)
==24030==  Address 0xf45cb7b is 0 bytes after a block of size 347 alloc'd
==24030==    at 0x4A089C7: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x414BAC: mem_alloc (edje_cc_mem.c:15)
==24030==    by 0x41B66A: st_filters_filter_file (edje_cc_handlers.c:4718)
==24030==    by 0x410EDA: new_statement (edje_cc_parse.c:229)
==24030==    by 0x41227C: parse (edje_cc_parse.c:719)
==24030==    by 0x412E5C: compile (edje_cc_parse.c:1044)
==24030==    by 0x405624: main (edje_cc.c:394)
==24030==
==24030== Invalid read of size 1
==24030==    at 0x4A0AC77: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x598AAFB: eet_dictionary_string_add (eet_dictionary.c:109)
==24030==    by 0x598107B: eet_data_put_string (eet_data.c:857)
==24030==    by 0x598213F: eet_data_put_type (eet_data.c:1433)
==24030==    by 0x59895AB: eet_data_put_unknown (eet_data.c:4798)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x59894A4: eet_data_put_array (eet_data.c:4760)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5989617: eet_data_put_unknown (eet_data.c:4807)
==24030==    by 0x598A113: _eet_data_descriptor_encode (eet_data.c:5172)
==24030==    by 0x5983E06: eet_data_write_cipher (eet_data.c:2396)
==24030==    by 0x5983E92: eet_data_write (eet_data.c:2412)
==24030==    by 0x406BC2: data_thread_head (edje_cc_out.c:674)
==24030==    by 0x406D51: data_write_header (edje_cc_out.c:717)
==24030==    by 0x40B52E: data_write (edje_cc_out.c:2439)
==24030==    by 0x40563D: main (edje_cc.c:399)
==24030==  Address 0xf45cb7b is 0 bytes after a block of size 347 alloc'd
==24030==    at 0x4A089C7: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==24030==    by 0x414BAC: mem_alloc (edje_cc_mem.c:15)
==24030==    by 0x41B66A: st_filters_filter_file (edje_cc_handlers.c:4718)
==24030==    by 0x410EDA: new_statement (edje_cc_parse.c:229)
==24030==    by 0x41227C: parse (edje_cc_parse.c:719)
==24030==    by 0x412E5C: compile (edje_cc_parse.c:1044)
==24030==    by 0x405624: main (edje_cc.c:394)

@fix
2015-12-16 14:34:20 -05:00
Mike Blumenkrantz b7cf69cd78 edje_cc: track parts for descriptions, ensure part types match when inheriting
since it's now possible to inherit parts, it's possible that inheriting from
a different part type can lead to memory errors in the case where one part
has a larger desc struct than the other

@fix
2015-12-16 14:31:49 -05:00
Mike Blumenkrantz 56469c55d9 efreet_icon_cache_create: null theme eet file to avoid double free
@fix
2015-12-16 13:40:00 -05:00
Stefan Schmidt 1872c06ff0 lz4: Update our internal copy to release r131
Clang and GCC optimizations and bug fixes. Have a look at the NEWS file for
more details.
2015-12-16 11:53:11 +01:00
Srivardhan Hebbar 1243b24f9b eina: API for base64url decode.
Summary:
eina_base64url_decode API.

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

Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3434
2015-12-16 16:15:44 +09:00
Srivardhan Hebbar 9f99213723 eina: Added testcase for base64url encoding API.
Summary:
Depends on D414

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

Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3432
2015-12-16 16:11:28 +09:00
Jean-Philippe Andre 4a538ec246 Evas GL: Fix shaders for bigendian
Fixes T2918
2015-12-16 15:55:10 +09:00
Jee-Yong Um 395ed14f63 edje: add size_class test case
Summary: add edje size_class APIs' test case

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3391
2015-12-16 14:56:39 +09:00
Hein-Pieter van Braam c46ab1d864 emile: fix compilation with --enable-liblz4
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-15 17:15:46 -08:00
Mike Blumenkrantz fc4b927a83 evas: update/clarify RENDER_FLUSH callback docs 2015-12-15 17:57:37 -05:00
Mike Blumenkrantz fb8c547077 evas: do not unset/delete master clip after every frame
this is not ideal since it triggers a client-side rerender of every object
which was clipped to the master clip (double render) and then this ends up
forcing the server to rerender the same area twice as well

not only that, it causes all surface damages to to be the size of the entire
window - framespace for every frame

@fix
2015-12-15 17:24:52 -05:00
Mike Blumenkrantz 1d3c4162b3 evas: trigger FLUSH_PRE callback prior to kicking off an async render
while not occurring immediately before flush as in sync rendering, this
is functionally close enough that it will serve the purpose for which the
callback was intended, namely receiving a callback that occurs after render
update calculations have occurred but before flush happens

@fix

ref cbb447c878
2015-12-15 17:24:52 -05:00
Mike Blumenkrantz 092d7a6f3d evas: resize master clip if framespace|viewport.changed is set 2015-12-15 17:24:52 -05:00
Mike Blumenkrantz 990c23c840 evas: do not add unclipped smart members to the master clip
this is probably a pretty unlikely scenario, but messing with smart
members in this way is probably not a great idea

@fix
2015-12-15 17:24:52 -05:00
Mike Blumenkrantz 54df1d9c6a ecore-evas wayland: move frame sending to pre-flush callback
it was possible to deadlock rendering if a pre-render occurred but
the resulting render had no updated regions

@fix
2015-12-15 17:24:52 -05:00
Duna Oh cb23fd2af2 ecore-drm: Fix failure of setting/closing evdev->fd which causes fd leak
Summary:
When a input device is plugged in, _cb_open_restricted() is called before creating evdev.
So setting fd value on evdev was failed in _cb_open_restricted() and also closing evdev->fd was invalid.
Using a eina_hash which has 'path-fd' pairs, we can find fd value after evdev is created.

@fix

Test Plan:
(1) Multiple input devices are connected. Their evdev->fd remains zero or initial value.
(2) When one of those devices are plugged out, fd leak would happen.

Reviewers: raster, zmike, gwanglim, stefan_schmidt, devilhorns, ManMower

Subscribers: cedric, jpeg, Jeon, input.hacker

Differential Revision: https://phab.enlightenment.org/D3428
2015-12-15 10:28:39 -05:00
Jean-Philippe Andre 7fd907a132 Eina safety: Set error flag in case of safety check error
Eina_Error is almost not used at all. Meh.
2015-12-15 17:43:39 +09:00
Jean-Philippe Andre 5ad9654fbc Eina safety: Add internal function to log errors
The main reason is convenience for debugging when using GDB,
this will give a simple breakpoint for all safety check failures.

Also, this creates a more visible log domain (red).
2015-12-15 17:32:50 +09:00
Jean-Philippe Andre 1f75cfc3cf Eina log: Disable backtrace by default for dev builds
The EINA_LOG_BACKTRACE thing is aimed at production environments,
so we can extract a backtrace from a log file post-mortem, but not
for continuous development of EFL itself.

I know this should make a few people happy.
2015-12-15 16:01:51 +09:00
Jean-Philippe Andre 6bc24b4794 Eina log: Fix meaning of EINA_LOG_BACKTRACE env
Most eina log env vars mean "if loglevel <= val then print log"
but eina_log_backtrace was "if loglevel < val" which I thought
was a bit confusing. The default behaviour is unchanged.
2015-12-15 15:25:55 +09:00
Jean-Philippe Andre 293812023e Examples: Remove strange characters at beginning of file 2015-12-15 15:05:06 +09:00
Vincent Torri ef02c565eb Examples, Evas: remove MAX_PATH, which is already defined on Windows, and not used in this example
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3442
2015-12-15 15:05:06 +09:00
Vincent Torri 8f4834e12c Example, Ecore: fix compilation on Windows
Summary:
The socket API is different on Windows and on Linux.

This is the perfect example where we need to abstract the socket API in Eina :
1) to avoid all these includes specific to sockets
2) to avoid on Windows undefined behavior : close(socket); is undefined behavior if socket is indeed a socket

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Projects: #efl

Differential Revision: https://phab.enlightenment.org/D3441
2015-12-15 15:05:06 +09:00
Vincent Torri 44cc2b0a7d Examples Evas: 'far' and 'near' are Windows keywords, so rename them to far_ and near_
Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3440
2015-12-15 15:05:06 +09:00
Vincent Torri 097f7e9f7b Examples: Fix compilation on Windows for eina, eio, elocation and eolian_cxx
Summary:
When compiling on Windows, Evil.h must be included, so update Makefile.am
accordinglY

Reviewers: cedric, jpeg

Reviewed By: jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3439
2015-12-15 15:05:06 +09:00
Jean-Philippe Andre 42744eff6f Evas VG: Fix clang warning 2015-12-15 15:05:03 +09:00
Jean-Philippe Andre 2960b70340 Eina Xml: Fix clang warnings 2015-12-15 14:35:46 +09:00
Jean-Philippe Andre 4943fe3a0d Evas GL: Fix clang warnings
Use pragma diagnostic like with GCC since we want to set the function
pointer even though we deprecate the function.
2015-12-15 14:35:38 +09:00
Jean-Philippe Andre 9e68f0524b Eina value: Fix clang warnings (use NULL instead of bool) 2015-12-15 14:12:21 +09:00
Jean-Philippe Andre ddd783ec88 Evas filters: Temporarily disable failing tests
Apparently a special font makes the vflip tests crash. vflip
definitely needs to be fixed.

I'm currently working on the filters, so I'll get back to these.
This is a temporary patch.
2015-12-14 20:29:37 +09:00
Jean-Philippe Andre 6dcde68d24 Eolian gen: Don't fail if file is empty (--gi)
@fix
2015-12-14 16:17:52 +09:00
Vincent Torri 232b08cef3 Ecore_Win32: let cursors on the non-client area (the borders) be like the default ones
After the support of the X11 cursors on Windows, the cursors were set for the whole
window (even the borders). Now we let the system use the default cursors for the borders
and we use the cursors set by the API for the client area only
2015-12-14 11:14:51 +09:00
Vincent Torri 242278669f Eolian test: use eina_environment_tmp_get() instead of deprecated code 2015-12-14 11:14:48 +09:00
Vincent Torri 6b368eb127 Eina test: declare clock_gettime() by including time.h, like it should be 2015-12-14 11:14:46 +09:00
Vincent Torri 70b805be46 Eina test strbuf: the macro TEXT already exists on Windows so rename it to TEST_TEXT 2015-12-14 11:14:34 +09:00
Vincent Torri 2b20e3e21b Evas example: fix warning
Summary:

Test Plan:

Reviewers: cedric

Subscribers:
2015-12-14 11:14:28 +09:00
Youngbok Shin fcba96384f Evas Textblock: Fix NULL dereferencing issue
Summary:
Even if the given two cursor is NULL, it shouldn't be crashed.
@fix

Test Plan:
Test case included in Evas test suite.
Run "make check".

Reviewers: herdsman, tasn

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3422
2015-12-13 17:15:10 +02:00
Carsten Haitzler 22869bb94e evas - fix evas module locks to init/del when movile created/destroyed
we initted when we load and unload. this led to races with
locking/unlocking elsewhere as these expected us to be initted and we
were not yet. this fixes that!

@fix
2015-12-12 23:37:16 +09:00
Chris Michael 0848792204 ecore-evas-wl: Fix copy/paste errors
This fixes fat-finger copy/paste errors when copying functions from
ecore_evas_wayland_shm to ecore_evas_wayland_egl

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-11 11:34:42 -05:00
Chris Michael 757f530af9 ecore-evas-wl: Defer creating surfaces for wayland canvas
This code adds support for deferring of surface creation and showing
inside Ecore_Evas Wayland. This is needed for Enlightenment so that it
does not try to create or show surfaces until the compositor has had a
chance to sync globals. This fixes an issue where early surface
creation would cause a crash in the compositor due to globals not
being syncd.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-11 11:26:24 -05:00
Chris Michael 8c85a89303 ecore-wl2: Add new event for sync done
This removes the usage of ecore_main_loop_iterate inside of the
display_connect function. It creates a new event type for when display
sync is done, this was we can defer surface creation and EE showing
until the compositor has had a chance to synchronize globals. We need
this for Enlightenment so that it does not try to create error dialogs
too early and thus crash due to not having sync'd globals yet

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-11 11:24:32 -05:00
Jaehyun Cho f6804ac1c6 Draw: Fix compile error by removing duplicate definition. 2015-12-11 16:58:55 +09:00
Carsten Haitzler 000beb2f17 Revert "evas: trigger RENDER_FLUSH callbacks during async render"
This reverts commit cbb447c878.

1. this is wrong because evas_render_pipe_wakeup() is being called IN
THE RENDER THREAD. it... SENDS a wakeup back to the mainloop with

   evas_async_events_put(data, 0, NULL, evas_render_async_wakeup);

and you can see that evas_render_async_wakeup() calls
evas_render_wakeup() and in evas_render_wakeup() flush pre/post are
called, but since the trhead does the flush we cant realyl call
before/after, but it retains order... IF there are updates (haveup).

so calling these callbacks FROM a thread is now leading to apps
mysteriously exiting. this is mucho bad. just at random i now have my
terminals exiting.
2015-12-11 15:15:36 +09:00
Jaehyun Cho d1c359eb27 Evas GL: Fix compile error by comment out removed function. 2015-12-11 14:29:16 +09:00
Jaehyun Cho 91d9e7f83c Revert "ecore_cocoa: add support for system cursors"
This reverts commit 4623d57762.
This commit is duplicated with 2c93c73cbd.
2015-12-11 14:28:33 +09:00
Minkyoung Kim a9df72f611 evas: Do not preload data if data is cached.
Summary: Summary : If data is cached, need not to reload data.

Test Plan: Local tests

Reviewers: jpeg

Reviewed By: jpeg

Subscribers: eunue, spacegrapher, cedric, wonsik, jiin.moon

Differential Revision: https://phab.enlightenment.org/D3418
2015-12-11 14:05:12 +09:00
Jean-Philippe Andre ce21e513d5 Evas GL: Avoid confusing ERR message when requesting depth & stencil
An ERR message would be printed out mentionning that direct rendering
won't work on this window, even if DR was not requested.
Also, set the DR-specific flags only if DR is enabled.

See T2936.
2015-12-11 11:47:45 +09:00
Carsten Haitzler 44260b69e2 efl -break the "i really know what i'm doing" option to get attention
so .. more gentoo "i just copy and pasted and dont know what i'm
doing" land has hit again.
2015-12-11 09:51:00 +09:00
Cedric BAIL c2a027568b eldbus: fix compilation of eldbus user. 2015-12-10 16:23:25 -08:00