summaryrefslogtreecommitdiff
path: root/src/lib/eet (unfollow)
AgeCommit message (Collapse)Author
2018-11-21eet - dictorinary - tidy up code to be easier to readCarsten Haitzler (Rasterman)
more compact so less scrolling - easier to read.
2018-11-21eet dict - remove redundant check of len, str and possibly strcmpCarsten Haitzler (Rasterman)
aim for small speedups.
2018-11-21eet - dictionary - use rwlocks instead of spinlocks - better contentionCarsten Haitzler (Rasterman)
if the dict is contended on by lots of threads then a spinlock really makes it slow. a rwlock gets about 1.5-2x speedup depending on arch/thread count. @optimize
2018-11-16eet: Remove unused codeDerek Foreman
This stuff has been unused for years, so instead of fixing it up, remove it. Differential Revision: https://phab.enlightenment.org/D7283 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-16eet: Remove pointer deduplicationDerek Foreman
After my previous changes, the only thing left that's adding duplicate pointers should be string allocations, either direct (which have no free) or stringshare which need to be "freed" for each duplicate as it's a refcounting mechanism. This speeds up parsing the theme file modestly (10ms faster launching elementary_test for me), and should also prevent leaking every stringshare that's on the freelist if an eet load fails. I would not be at all surprised if there are still bugs in the fail path, but I hope this at least mitigates failure tracking's impact on successful parse times. Differential Revision: https://phab.enlightenment.org/D7282 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-16eet: Demystify some typecastsDerek Foreman
Simplify some confusing typecasts. There may be more around. No functional change. Differential Revision: https://phab.enlightenment.org/D7281 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-16eet: Stop freeing allocated memory in descriptor_decodeDerek Foreman
There are other paths that free this memory, so it ends up freed by the EET_G_UNKNOWN_NESTED path, yet remains on the list. It makes more sense to have all the callers deal with this memory. Differential Revision: https://phab.enlightenment.org/D7280 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-16eet: Don't add duplicate hashes to eet freelistDerek Foreman
The eet freelist code de-duplicates pointers, so passing duplicates is just fine, however it does waste time doing the de-dup. We know when we have a duplicate anyway, so save the time. Differential Revision: https://phab.enlightenment.org/D7279 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-16eet: Don't add duplicate lists to eet freelistDerek Foreman
The eet freelist code de-duplicates pointers, so passing duplicates is just fine, however it does waste time doing the de-dup. We know when we have a duplicate anyway, so save the time. Differential Revision: https://phab.enlightenment.org/D7278 Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
2018-11-09eet data - if xwarning about possibly uninit varCarsten Haitzler (Rasterman)
2018-10-02here comes mesonMarcel Hollerbach
a new shiny buildtool that currently completes in the total of ~ 4 min.. 1 min. conf time 2:30 min. build time Where autotools takes: 1:50 min. conf time 3:40 min. build time. meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read. Further informations can be gathered from the README.meson Right now, bindings & windows support are missing. It is highly recommented to use meson 0.48 due to optimizations in meson that reduced the time the meson call would need. Co-authored-by: Mike Blumenkrantz <zmike@samsung.com> Differential Revision: https://phab.enlightenment.org/D7012 Depends on D7011
2018-08-30docs: Fix typos and some wrong expressions in API reference doc.Myoungwoon Roy, Kim
Summary: I had fixed some typos and some wrong expressions in API reference doc Test Plan: N/A Reviewers: raster, zmike, Hermet, segfaultxavi Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D6943
2018-06-29eet: set parent struct member when adding a child to a parent nodeMike Blumenkrantz
Summary: this relation can be retrieved with eet_node_parent_get() but is never set internally fix T4600 @fix Reviewers: artem.popov, devilhorns, Hermet, vtorri Reviewed By: Hermet Subscribers: Hermet, cedric, #committers Tags: #efl Maniphest Tasks: T4600 Differential Revision: https://phab.enlightenment.org/D6336
2018-06-15eet: handle decode failures as errors in variant decodingMike Blumenkrantz
Summary: all other null returns of _eet_data_descriptor_decode() are treated as fatal errors when decoding, and failure to do so in this case guarantees errors later due to incomplete decoding @fix ref T5379 Depends on D6293 Reviewers: devilhorns, ManMower Reviewed By: ManMower Subscribers: cedric, #committers Tags: #efl Maniphest Tasks: T5379 Differential Revision: https://phab.enlightenment.org/D6294
2018-06-15eet: print errors any time an error occurs while decodingMike Blumenkrantz
Summary: catching these errors was super annoying since the codebase is mostly comprised of goto statements, so this should make future debugging easier Depends on D6292 Reviewers: devilhorns, ManMower Reviewed By: ManMower Subscribers: cedric, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D6293
2018-06-15eet: add #if 0 around macro which will cause compile errors if usedMike Blumenkrantz
Summary: this macro wraps a function which is also inside an #if 0 block, so it's best not to leave it where someone might try to use it no functional changes Reviewers: devilhorns, ManMower Reviewed By: ManMower Subscribers: cedric, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D6292
2018-05-27eet - check for null edd's and don't decode junk dataCarsten Haitzler (Rasterman)
in the process of fixing a bug in elm config i found the eet will decode junk data with a null edd. check for these where it was missing and return null so it's easier to see a problem. not really a fix as it's invalid use of the api, but it's nicer to debug...
2018-04-25eet: add counter for number of frees needed in each directoryMike Blumenkrantz
Summary: further optimize the eet_shutdown case of closing files and avoid endlessly looping over empty nodes Depends on D5950 Reviewers: cedric Reviewed By: cedric Differential Revision: https://phab.enlightenment.org/D5951
2018-04-25eet: simplify shutdown file closingMike Blumenkrantz
no need to free mempool memory when the mempool is about to be freed, and eet_clearcache duplicates existing shutdown functionality Differential Revision: https://phab.enlightenment.org/D5950
2018-02-28eet: add doc note for EET_DATA_DESCRIPTOR_ADD_VAR_ARRAY_STRINGMike Blumenkrantz
2018-01-18all: Simplify definition of EAPIVincent Torri
This will help in the transition from Autotools to Meson. This has been tested on Windows for which EFL_XXX_BUILD were first introduced.
2017-12-13efl: drop deprecated Encoding key from desktop filesRoss Vandegrift
Summary: The Encoding key is no longer required, all desktop files are assumed to be UTF-8 encoded. See details at: https://standards.freedesktop.org/desktop-entry-spec/1.1/apc.html Fix various typos and misspellings lintian, Debian's package checker, uses strings to check for common typos in compiled binaries. This change fixes the ones it identified in 1.20.6. Reviewers: cedric Reviewed By: cedric Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5584 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-11-21eet: removed warning from eet_imagePawel Aksiutowicz
Reviewers: stanluk, lukasz.stanislawski Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5505
2017-11-01Eet: fix wrong doxygen definitionJinYong Park
Summary: Eet_Image_Encoding and Eet_Colorclass is from enumeration in Emile, but it's definition is typedef, not enum. It makes broken link like below webpage. https://docs.enlightenment.org/efl/current/group__Eet__File__Image__Group.html In above page, Eet_Image_Encoding is not linked. So doxygen documentation should be changed to typedef. Reviewers: cedric, jpeg, myoungwoon, conr2d Differential Revision: https://phab.enlightenment.org/D5411
2017-10-26eet: Add missing documentation informationWonki Kim
Summary: There is a missing comment for Eet_Colorclass. This patch append a piece of information. Reviewers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5377
2017-10-23eet: add missing documentation.Bowon Ryu
Summary: This adds missing doxgen documentation for eet. Test Plan: API Doxygen Revision Reviewers: cedric, jpeg, myoungwoon Differential Revision: https://phab.enlightenment.org/D5344
2017-10-06eet: wrong comparision to less than zero with unsigned integer.Subodh Kumar
Summary: Unsigned interger should not be compared to less than zero. @fix Test Plan: Na Reviewers: cedric Subscribers: jpeg Differential Revision: https://phab.enlightenment.org/D5264 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-09-22EFL For WIN32: Replace HAVE_EVIL define with _WIN32Vincent 'vtorri' Torri
2017-06-05eet: silence properly reused code through switch case statement fallthrough.Cedric BAIL
2017-04-18eet: use new API eina_file_close_on_exec.Cedric BAIL
2017-03-06eet_lib: changed unlink to eina_file_unlinkIvan Furs
Summary: changed unlink to eina_file_unlink Reviewers: cedric, raster, an.kroitor, rimmed, FurryMyad, NikaWhite, vtorri Subscribers: artem.popov, cedric, jpeg Differential Revision: https://phab.enlightenment.org/D4698
2017-02-16doxygen: fix typos and some wrong expressions in Edje and Eet API reference ↵Myoungwoon Roy, Kim
documentation. Summary: I had fixed some typos and some wrong expressions, such as capital letters, singular, and orders of groups in Edje and Eet API reference doxygen. Test Plan: Doxygen Revision Reviewers: stefan, cedric, raster, Jaehyun_Cho, jpeg Subscribers: conr2d Differential Revision: https://phab.enlightenment.org/D4666 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-08eet data - fix checking return value of eina_value_pset like elsewhereCarsten Haitzler (Rasterman)
eina_value_pset() return is checked pretty much everywhere except here. this addresses that inconsistency. this fixes CID 1367487
2017-02-07eet: read sould be failed if cipher_key exist but file not cipheredJiwon Kim
Summary: Currentely, if eet_read_cipher()'s cipher_key param is exist but file not ciphered, function always read and return successful result. But, this behavior can not check data integrity. e.g. 1. App create config file using eet with encryption key. 2. Attacker replace config to malicious config (not encryted). 3. App can not notice if eet_read_cipher() read that successfully. @fix Test Plan: $eet -e test.cfg my_config test.src 1 $eet -d test.cfg my_config decode_res.txt my_encrytion_key (Currentely decode success, but should be failed) Reviewers: woohyun, raster Subscribers: id213sin, akanad, cedric, jpeg Differential Revision: https://phab.enlightenment.org/D4563 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-01cmake: handle 'FindXXX.cmake' standard with 'find-XXX' libraries.Gustavo Sverzut Barbieri
One can use virtual 'find-XXX' entries in LIBRARIES or PUBLIC_LIBRARIES to use XXX_LIBRARIES and XXX_INCLUDE_DIR.
2017-02-01cmake: remove dependency on libjpeg in eet as it is handled in commonStefan Schmidt
2017-01-27cmake: add EFL_SUPPORT_LIB() and simplify/speedup its usage.Gustavo Sverzut Barbieri
generate a static library for src/static_libs and use that as LIBRARIES for the actual library, for those such as rg_etc that are used multiple times will even speed up the final build by compiling only once. Although not used, they can be made into shared libraries that would go inside /usr/lib/efl/support/v-1.19/libname.so
2017-01-26cmake: add eet.Gustavo Sverzut Barbieri
2017-01-04openssl 1.1 build break fixesCarsten Haitzler (Rasterman)
this fixes building against openssl 1.1 since it broke api in various ways by hiding structs and deprecating api's (this causes warnings not breaks unlike the struct hiding). this adapts to these changes and makes efl build again. @fix
2016-12-20doxygen: remove reference warnings.Jee-Yong Um
Reviewers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D4503 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-12-01Eet: add EINA_ARG_NONNULL for eet_data_text_undump* @fixArtem Popov
Summary: Eet_data_text_undump/undump_cipher: add EINA_ARG_NONNULL for mandatory pointer on size(int) Reviewers: cedric, NikaWhite, myoungwoon, jpeg Reviewed By: jpeg Subscribers: jpeg, t.naumenko Differential Revision: https://phab.enlightenment.org/D4440
2016-11-28eet: add checking on null to eet_data_write_cipher and EINA_ARG_NONNULL to ↵Artem Popov
dump API @fix Summary: add checking on null to eet_data_write_cipher and EINA_ARG_NONNULL to eet_data_dump* and eet_data_test_dump* API Reviewers: NikaWhite, myoungwoon, cedric Reviewed By: cedric Subscribers: jpeg, t.naumenko Differential Revision: https://phab.enlightenment.org/D4433 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-11-16eet: add NULL-check to eet_connection_empty API to avoid segfaultArtem Popov
@fix Summary: Only eet_connection_empty hasn't checking on NULL and try to read from field of object. Add NULL-check for connection and return result of empty connection. Reviewers: jpeg, cedric, myoungwoon Subscribers: t.naumenko, NikaWhite Differential Revision: https://phab.enlightenment.org/D4399 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-11-14Eet: initialize descriptor class correctlyDaniel Zaoui
2016-11-12eet: return 0 instead of NULL when the return type is intJean Guyomarc'h
2016-11-11eet: add to basic eet_image EAPIs checking on NULLArtem Popov
@fix Summary: to avoid segfaults with NULL raw data, add checking on NULL to basic eet_image APIS Reviewers: NikaWhite, cedric, myoungwoon, jpeg Reviewed By: jpeg Subscribers: t.naumenko, jpeg Differential Revision: https://phab.enlightenment.org/D4386 Signed-off-by: Cedric Bail <cedric@osg.samsung.com>
2016-09-21eet: fix gnutls support with newer version.Cedric BAIL
2016-09-20eet: set alpha_texture for ETC1+AlphaSungtaek Hong
Summary: alpha_texture need to be set EINA_TRUE to support ETC1+Alpha @fix Test Plan: Create an EDC file with png image with Alpha. compress image with ETC1 and ETC2. Observe Alpha is properly applied in both case. Reviewers: jpeg, Hermet, cedric Reviewed By: cedric Subscribers: conr2d Differential Revision: https://phab.enlightenment.org/D4307 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-08-01autotools: since it has been broken for some times and nobody noticed, let's ↵Cedric BAIL
remove per directory support.
2016-07-13edje: Fix coverity warningJean-Philippe Andre
CID 1355234 Logically dead code The indicated dead code may have performed some action; that action will never occur. In eet_data_descriptor_element_add: Code can never be reached because of a logical contradiction (CWE-561) Solution: use explicit range within valid values with <= and >= rather than excluded values with > and <