Commit Graph

1125 Commits

Author SHA1 Message Date
Mike Blumenkrantz 20b592cef7 fix various trivial null derefs
Summary:
CIDs 1401081, 1401044, 1400983, 1400960, 1400927, 1400799, 1396946, 1396944,
     1383851, 1383847, 1382211, 1379921, 1379921

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10452
2019-10-18 13:30:10 -04:00
Mike Blumenkrantz c12008b4d0 efl/io: return EINVAL if null slice is passed for writing
Summary: CIDs 1396996, 1396983, 1396953

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10451
2019-10-18 13:30:03 -04:00
Mike Blumenkrantz 9ea26fd88f efl/boolean_model: remove misleading null check
Summary:
this is always a pointer to a stack variable

CID 1405799

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10444
2019-10-18 13:29:26 -04:00
Mike Blumenkrantz 36c5f1026f ecore/main: avoid calling FD_SET with invalid fd value
Summary:
it's possible that _ecore_get_epoll_fd() can return -1, so ensure that we
correctly handle this

CID 1383850

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10394
2019-10-18 13:29:01 -04:00
Mike Blumenkrantz 39f384bba1 ecore/getopt: handle negative return in arg parsing
Summary:
_ecore_getopt_parse_find_nonargs_base() can return -1 on errors

CID 1402615

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10393
2019-10-18 13:28:54 -04:00
Mike Blumenkrantz 8c6b26af01 ecore: inhibit "idle" event emission if no subscribers exist
Summary:
it seems like this was intended to be handled already, but somehow it wasn't...

ref T8321
Depends on D10358

Reviewers: cedric

Reviewed By: cedric

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8321

Differential Revision: https://phab.enlightenment.org/D10359
2019-10-14 09:30:03 -04:00
WooHyun Jung 247331363a eolian: fix eolian errors with EOLIAN_ENFORCE_SINCE=1
Summary:
This is not the end of fixing eolian errors. I need to keep fixing
more.

Test Plan:
1. export EOLIAN_ENFORCE_SINCE=1
2. ninja

Reviewers: q66, segfaultxavi, zmike, bu5hm4n, Jaehyun_Cho

Reviewed By: segfaultxavi, Jaehyun_Cho

Subscribers: Jaehyun_Cho, stefan_schmidt, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10370
2019-10-14 16:55:52 +09:00
Xavi Artigas 5a447ed327 docs: Remove redundant documentation
Lots of EO files had the same information at the property and set/get level.
Removed the redundant bits, and moved to the property level the common ones.
Set and Get documentation should be used only to clarify setter-only or
getter-only behavior.
2019-10-07 16:40:50 +02:00
Jongmin Lee 34fa84a171 ecore : fix incorrect size of expression for coverity
Summary: correct bad use of sizeof function (detected by coverity tool)

Test Plan: N/A

Reviewers: Hermet, woohyun, kimcinoo, cedric, jsuya

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10281
2019-10-07 15:59:18 +09:00
Xavi Artigas 835e230f2f Revert "eolian: disallow missing docs for stable API where necessary"
I'm afraid but this breaks the mono bindings too close to a release.
This also fixes the missing docs errors by adding a lot of inconsistent
placeholder text ("No description supplied.", "TBD") which will make
finding them later on more complicated.

I was the one that asked for this feature but it is not critical at this
point, so I suggest we explore some refinements (like T8291) before landing
this patch in its current state.

This reverts commit 2946cb3c32.
2019-09-30 19:48:19 +02:00
Daniel Kolesa 2946cb3c32 eolian: disallow missing docs for stable API where necessary
The things that require docs include classes, variables, typedecls,
events and methods/properties. Implements, params, returns, parts
and struct/enum fields don't require them.

Empty/whitespace only string does not count as documentation.
2019-09-30 18:21:17 +02:00
SangHyeon Jade Lee d4c4d8f0f4 efl_core : stabilized Efl.Generic_Model
Summary:
stabilzed Efl.Generic_Model

depends on D10188

Reviewers: cedric, zmike, segfaultxavi

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10189
2019-09-26 11:06:22 -04:00
Daniel Kolesa a95870286e eolian: stricter checks for const() validity 2019-09-26 16:19:12 +02:00
Cedric Bail a55580ab27 ecore: stabilize Efl.Loop_Model
Summary:
T8270
Depends on D10138

Reviewers: zmike, segfaultxavi, bu5hm4n, SanghyeonLee, lauromoura, felipealmeida

Reviewed By: SanghyeonLee

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7885

Differential Revision: https://phab.enlightenment.org/D10139
2019-09-25 17:16:54 -03:00
Cedric Bail acb314fb1d ecore: stabilize Efl.Composite_Model.
Summary: Depends on D10137

Reviewers: zmike, segfaultxavi, bu5hm4n, SanghyeonLee, lauromoura, felipealmeida

Reviewed By: SanghyeonLee

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7885

Differential Revision: https://phab.enlightenment.org/D10138
2019-09-25 17:16:54 -03:00
Wonki Kim aaf8d01ba8 doc: update ecore_filter_model description
Summary: this patch updates single line description of ecore_filter_model.(T7717)

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10103
2019-09-24 17:24:49 +02:00
Cedric Bail 23c24b36a1 ecore: update Efl.Boolean_Model to handle children removal and shifting all necessary boolean and index.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10033
2019-09-24 09:18:43 +02:00
Cedric Bail 6e49752712 ecore: correctly handle children removal in Efl.Composite_Model by updating all required index.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10032
2019-09-24 09:18:42 +02:00
Woochanlee 802f414b25 ecore_thread: Fix arguments to match with the function call.
see the _eina_thread_internal() function

r = c->func((void*) c->data, eina_thread_self());

The second param has been missed in ecore_thread_worker, ecore_direct_worker functions.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10073
2019-09-23 10:33:15 -07:00
Daniel Kolesa 53a3326ddc eolian: rename any_value_ptr -> any_value_ref for consistency 2019-09-20 18:03:39 +02:00
Xavi Artigas 61ce4c79fd Use proper Eolian syntax for default values instead of docs
Summary:
Eolian supports reporting the defaults for parameters and return values, but in some
places we have been writing this information in the documentation instead.
This patch moves it to its proper place, where documentation generators can pick it up
and render it in a consistent manner.

Ref T8171

Reviewers: zmike, bu5hm4n, lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8171

Differential Revision: https://phab.enlightenment.org/D10051
2019-09-20 11:55:55 -03:00
Cedric Bail 77ab3523cd ecore: remove unused piece of code.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10030
2019-09-19 14:37:49 -07:00
Cedric Bail f402efbba3 ecore: properly initialize all field in event generated by Efl.Generic_Model
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10029
2019-09-19 14:37:47 -07:00
Cedric Bail 6af8a70f37 ecore: properly initialize the event structure in Efl.Generic_Model.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10028
2019-09-19 14:37:45 -07:00
Mike Blumenkrantz da5fcb8ea0 ecore/signal: increase maximum signal throughput
this adds 4 more signal handling fds and loops over them for reading/writing
signal info in order to handle more signals when the buffer of one (or more)
pipes is full

also update the unit test to verify that we are receiving all the events without
dropping any and bump the number of signals to 2000 since we should now be able to
handle that many

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10027
2019-09-19 14:37:16 -07:00
Mike Blumenkrantz aae2e49744 ecore/signal: also use nonblock for writing side of signal pipe
if any efl-based process receives a bunch of signals in a short period of
time, it will deadlock in the signal handler. this is unavoidable given the
current signal handling architecture

by setting nonblock, we can at least avoid deadlocking even if it means we'll
be losing signal events

@fix

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10025
2019-09-19 14:37:11 -07:00
Xavi Artigas f4290cb330 Efl.ThreadIO: replace empty implementations with @pure_virtual
The implementation for call and call_async are empty on this mixin.
I think removing them and marking them as @pure_virtual in the EO file is cleaner.
2019-09-18 13:43:30 +02:00
Xavi Artigas 214ced325f docs: Update Efl.Threadio and Efl.Appthread 2019-09-18 13:43:30 +02:00
Woochanlee 04df2327bd docs: Fill-in docs for Efl.Threadio, Efl.Appthread
Reviewers: myoungwoon, segfaultxavi

Subscribers: stefan_schmidt, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10000
2019-09-18 13:43:30 +02:00
Myoungwoon Roy, Kim c6dd9d2a64 doc: improve single line descriptions
Summary: this patch improves single line descriptions described on T7717

Reviewers: woohyun, Hermet, myoungwoon, cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9795
2019-09-13 18:29:02 +02:00
Carsten Haitzler d1890f5eca efl task - change exit method to use normal event for multiple listeners
we couldn't have multilpe listeners before. now we can. better this
way. have to do this now because i can't mark efl task as @beta
without taking out massive wads of efl with it.
2019-09-10 23:09:30 +01:00
Mike Blumenkrantz 2cb5dc33a1 build: unbreak destructors
Summary:
the following commits did not correctly add super calls to the destructor,
resulting in a massive number of build errors as well as some unit test failures

ref e51699afbc
ref 38be95b0b6

Reviewers: raster, lauromoura

Reviewed By: lauromoura

Subscribers: lauromoura, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9902
2019-09-10 15:11:24 -03:00
Carsten Haitzler 93b4571d69 efl task - go back to non beta... this breaks the world 2019-09-10 17:53:59 +01:00
Carsten Haitzler 5455a2dcf7 eo beta - mark task, io classes as beta because they are... 2019-09-10 17:44:51 +01:00
Carsten Haitzler e51699afbc efl core cmommand line - implement destructor and thus fix leak 2019-09-10 17:44:51 +01:00
Xavi Artigas 96d8b9bc3e docs: nicer formatting of the NULL keyword, everywhere 2019-09-10 16:05:44 +02:00
Daniel Kolesa 31658e6e14 efl: replace usage of ptr() in all stable APIs 2019-09-10 14:29:06 +02:00
Xavi Artigas f78b4861af efl_task/exe: Further update docs 2019-09-10 12:26:03 +02:00
Wonki Kim bc0eeeb1ec efl_exe: Enhance class description
Summary: This patch ehnance the description of efl_exe, regarding task T7717.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9889
2019-09-10 12:13:40 +02:00
Daniel Kolesa 4f4b58bf4c efl: change all occurences of @owned to @move 2019-09-06 17:01:05 +02:00
SangHyeon Jade Lee 4e379f5db4 Efl_Ui: Move elementary and change namespace Ui for ui related models
Summary:
Select and View is ui characteristic features,
so Efl_Select_Model and Efl_View_Model move to elementary from ecore
seems more natural.

namespace also should changed to Efl.Ui as it's right place.

Test Plan: run the test while building it

Reviewers: cedric, felipealmeida, bu5hm4n, zmike, lauromoura

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9820
2019-09-04 11:07:37 -04:00
Xavi Artigas dc05cbbee8 docs: Fix typos and wrap EO files to 120 chars
As per our style guide:
https://www.enlightenment.org/contrib/docs/eo-guide.md
2019-09-02 16:24:26 +02:00
Daniel Kolesa 9c018613ee eolian: drop @cref
In the end this was just a failed experiment that didn't turn
out to be practical. For now, revert back to ptr(const(T)) until
a proper replacement for pointer syntax is added.
2019-08-29 13:58:16 +02:00
Carsten Haitzler d4c123d360 efl loops/threads - by defaylt tasks (exe and threads) exit with parent
this also defers parent exit until all children exit and will wait
around looping until those children do report back with exited status
etc. - this meay mean some hangs for badly written/blocking apps that
have efl thrrads that refuse to exit. a slight policy change also
means that by default thread objects also get auto-deleted whent hey
report back exit codes etc. which leads to less code if you don't care
about this.
2019-08-26 14:19:30 +01:00
Vincent Torri 01b987df59 make mman.h private
Summary:
integrate mman.h to make Evil private to the EFL, as mman.h does not exist on Windows. After a discussion with raster, i include sys/mman.h only on non Windows platform.

One issue, though, is that src/modules/emotion/generic/Emotion_Generic_Plugin.h has inlined functions using mmap()

Test Plan: compilation on Windows

Reviewers: cedric, raster, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9542
2019-08-19 09:55:13 -04:00
Marcel Hollerbach 375f22931e meson: there is no need for checking ecore here
fix T7768

Differential Revision: https://phab.enlightenment.org/D9574
2019-08-19 09:44:26 +02:00
Daniel Kolesa 8a8a833837 eolian: rename @class on methods to @static
Ref https://phab.enlightenment.org/T8118
Ref https://phab.enlightenment.org/T7675
2019-08-16 16:27:00 +02:00
Carsten Haitzler f3c01a9a6c efl thread - use pipe array names consistently to avoid err handling bug
in the case pipes fail to create we'll close the wrong ones... this
fixes that. it also happens because i didn't use names consistently.
now it does so it's easier to keep right.

thanks coverity.

fix CID 1396994
2019-08-11 12:47:38 +01:00
Carsten Haitzler 60f549c5fb efl thread - fic pipe close to not close invalid pipe fds
if we only have stdout and no stdin we'd accidentally close junk int's
on the stack. fix this fix CID 1396963
2019-08-11 12:47:38 +01:00
Carsten Haitzler c2a33f2225 efl filter model - fix return value handling to avoid uninit mem access
coverity reported - it's right. this fixes CID 1401461 and CID 1401463
2019-08-11 12:47:38 +01:00