Commit Graph

65180 Commits

Author SHA1 Message Date
Hermet Park 63d1b32e62 canvas engine: + null check for safety 2020-02-14 13:39:17 +09:00
Hermet Park e64f45a889 gl image: free the resource properly at the corner case. 2020-02-14 13:27:11 +09:00
Hermet Park 064690d46e gfx path: remove unreacheable code 2020-02-14 13:17:48 +09:00
Hermet Park 9a58f4bde4 gfx path: + null check for safety 2020-02-14 13:15:55 +09:00
Hermet Park 1fff2f13ed gfx mapping: + null check for safety 2020-02-14 13:09:14 +09:00
Hermet Park 9569156b3f canvas vector: remove unreacheable code.
pd->buffer is always false.
2020-02-14 13:04:42 +09:00
WooHyun Jung ac85816283 edje_load: just remove unreachable code 2020-02-14 10:57:22 +09:00
WooHyun Jung fe7a7fa3af edje_calc: add null checking and remove unreachable code 2020-02-14 10:38:24 +09:00
João Paulo Taylor Ienczak Zanette 651517808c csharp: Generating documentation for tuple-value properties.
Adds documentation for tuple-value properties (properties with
multiple values), so the following Eo:

```
@property multi_valued_prop {
   [[ A multi valued property. ]]
   get {}
   set {}
   values {
     prop1: int; [[ Dummy property's first element. ]]
     prop2: int; [[ Dummy property's second element. ]]
   }
}
```

Generates the following documentation:

```
/// <summary>A multi valued property.<br/>
/// Since EFL *current version*.</summary>
/// <value>A tuple containing the following information:
/// <list type="bullet">
/// <item><description><c>prop1</c> (<c>Item0</c>): Dummy property&apos;s first element.</description></item>
/// <item><description><c>prop2</c> (<c>Item1</c>): Dummy property&apos;s second element.</description></item>
/// </list></value>
```

Note: This commit also adds a default separator between tag name and
parameters in `generate_opening_tag`.

Ref T8468.

Differential Revision: https://phab.enlightenment.org/D10889
2020-02-13 15:38:42 -03:00
Lucas Cavalcante de Sousa 4f3b3a33f5 efl_mono: Create insert list/array c# wrapper for eina_value.
Implements Insert() method to eina.Value containers (array/list). The
Insert() (src/bindings/mono/eina_mono/eina_value.cs) method wraps native functions implemented with c
(src/lib/eina/eina_inline_value.x).
Resolves T7402

Differential Revision: https://phab.enlightenment.org/D11298
2020-02-13 15:26:50 -03:00
João Paulo Taylor Ienczak Zanette 93d4ffc940 csharp: Prevent using system dll for eflcustomexportsmono
If EFL is installed system-wide, `CustomExports` would use the system
(`/usr`) dll instead of local build's, causing new implemented binding calls to
native functions to crash with no entry point found for them.

This patch fixes it by ensuring that the local build's
`libeflcustomexportsmono.dll` will be used.

Reviewed-by: Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D11343
2020-02-13 15:22:46 -03:00
SangHyeon Jade Lee 04b82b3f87 evas_textblock : remove wrong condition check for size_t value
Summary:
pos in cursor handle is defined size_t type,
(see efl_canvas_textblock_internal.h)
which is unsigned int, and always bigger or equal to 0.

Reviewers: bowonryu, ali.alzyod

Reviewed By: ali.alzyod

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11333
2020-02-13 20:14:55 +09:00
Hermet Park d62f967ed6 canvas textblock: + null handling 2020-02-13 19:16:01 +09:00
Hermet Park db0f08fbae canvas textblock: + null safety 2020-02-13 19:05:43 +09:00
Hermet Park 680eb03276 ui text: code refactoring
replace unreacheable code with EINA_UNUSED properly
2020-02-13 18:53:33 +09:00
Hermet Park 6684f41626 canvas font: correct wrong masking length.
the masking length should be x2 - x1 otherwise,
it will try to mask over regions with dirty pixels.

@fix
2020-02-13 16:50:21 +09:00
Yeongjong Lee 17f0d23e37 vg_common_json: use %zu for size_t
Summary:
Fixes a compiler warning
```
../src/static_libs/vg_common/vg_common_json.c: In function '_get_key_val':
../src/static_libs/vg_common/vg_common_json.c:16:34: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'unsigned int' [-Wformat=]
```

Test Plan: ninja build

Reviewers: Hermet, jsuya

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11327
2020-02-13 11:31:00 +09:00
Carsten Haitzler 2636853b7f eo - fix - fix alignment of eo object class structs - it was wrong
the alignbment logic was wrong. we have to use the worst case. that
means 8 or 16 byte alignment. eina mempool alignment logic is wrong
for this as it assumes an array of typoes of all the same size...

this fixes crashes seen on armv7 with sigbus in new gesture code which
got unlucky.

@fix
2020-02-12 21:11:18 +00:00
Stefan Schmidt 7c653df450 ci: enable exactness build on travis
Summary:
With exactness merged into efl we can finally enable some exactness
testing on our CI. As a first step we will run around 47 tests from our
elementary_tests recordings.

The base data is already in the specific docker image to avoid
downloading on each run. We also need to use a dedicated branch from the
repo while we are still working out all the problems to make exactness
recordings really independent from their env.

Depends on D11317

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11318
2020-02-12 12:10:07 -05:00
Stefan Schmidt bf2b9adec5 exactness_player: fix running of exactness player after compile fix
Summary:
The last compile fix broke the execution of exactness. When replacing
_POSIX_PATH_MAX with PATH_MAX here we did not catch that it would
overwrite out of bounds here as the original _POSIX_PATH_MAX is limited
to 256 while PATH_MAX can go up to 4096. This screws up the size of the
memset.

Reviewers: zmike, bu5hm4n, vtorri, ali.alzyod

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11317
2020-02-12 12:10:04 -05:00
João Paulo Taylor Ienczak Zanette 9510702ede csharp: Fix managed name when solving Get/SetType name clash
Summary:
If you declare a property called "type", the generated getter method
would be called "GetType", clashing with "System.Object.GetType" method. The
current workaround for that is to straight-forwardly insert the respective
class/abstract's Eolian name into the function name (becoming, for example
"GetMy_ClassType"), sometimes getting inconsistent to not only other methods
but also with documentation (leading to XML errors, since a cref doc would
reference "GetMyClassType", which doesn't exists).

This patch fixes that by wrapping the Eolian name with the already existing
`managed_name` function.

Test Plan: Run ninja tests.

Reviewers: zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11331
2020-02-12 16:43:25 +01:00
Mike Blumenkrantz cc777c05f8 tests/layout: modify api ordering test to verify theme signal emission
ensure that signals queued during construction are always emitted

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11162
2020-02-12 16:04:48 +01:00
Yeongjong Lee 63e20ed28d efl_ui_panes: remove duplicated press/unpress event
pressed/unpressed event will be emitted by efl_input_clickable_press/unpress.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11116
2020-02-12 16:04:45 +01:00
Yeongjong Lee b7db2edeec elc_fileselector: add NULL check for eina_value_type_get
Reviewers: Jaehyun_Cho, Hermet, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11314
2020-02-12 09:07:48 -05:00
Yeongjong Lee 2170a99388 elm_interface_scrollable: prevent calling APIs with NULL edje object
Summary:
Is is unnecessary to call edje_object_ functions if `edje_obj` is NULL.

Also, It prevents printing 6 eo warnings
```
WRN<30343>:eo ../src/lib/eo/eo.c:644 _efl_object_call_resolve() NULL passed to function efl_layout_signal_emit().
```

Test Plan:
`EINA_LOG_LEVELS=eo:2 elementary_test`
`EINA_LOG_LEVELS=eo:3 elementary_test -to focus`

Reviewers: bu5hm4n, Jaehyun_Cho, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11315
2020-02-12 09:07:48 -05:00
Carsten Haitzler 6981d09f9b eina - promise - be safe if no scheduled_entry is there
something is causing a scheduled entry to be called with no scheduled
entry: https://phab.enlightenment.org/T8490 - valgrind trace
aattached. i can't see it so i don't know what. the only protection i
can put in is this.
2020-02-12 09:53:22 +00:00
Xavi Artigas 3e88b3b9f9 Tabs: remove them
They have been known to crash some old compilers and have
severe performance penalties on non-power-of-two architectures
like the Chitauri 13-bit processors.

Tabs also cause eye strain, vomits, brain tumors and bad breath.
2020-02-12 10:44:06 +01:00
Jérémy Zurcher bcdfe21e9e eo : fix 8e6e1860c3, _efl_object_event_future_scheduler_get(…) returns a pointer 2020-02-12 09:08:59 +01:00
Wonki Kim b0a7532dad evas: remove redundant conditions.
Summary:
conditions of the inner and outer statement are identical.
this patch removes a condition of them.

Reviewers: jsuya, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11324
2020-02-12 16:48:16 +09:00
Wonki Kim 8e6e1860c3 eo: remove potentional NULL dereferencing
Summary: this patch removes a potentional NULL dereferencing

Reviewers: jsuya, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11325
2020-02-12 16:47:33 +09:00
Wonki Kim 7417436526 edje_cc : remove potential NULL dereferencing
Summary: this patch removes potential NULL deferencing in edje_cc

Reviewers: jsuya, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11326
2020-02-12 16:47:00 +09:00
Yeongjong Lee 69352e7abe efl_ui_position_manager_list: add NULL check for memory allocation
Reviewers: Jaehyun_Cho, Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11312
2020-02-12 16:45:40 +09:00
Shinwoo Kim 2f852c92e8 evas_render: initialize variable
Summary:
evas_object_image_load_region_get could be called with following stack.

(#0) evas_object_image_load_region_get
(#1) evas_render_proxy_subrender
(#2) evas_filter_context_proxy_render_all
(#3) evas_filter_object_render
(#4) evas_object_text_render

This means that evas_object_image_load_region_get is called by text object.
In this case, the load region value has garbabe, and it leads to invalid
memory access which is detected by Assan(T8610).

This patch initialize variable before using evas_object_image_load_region_set.

Reviewers: Hermet, jsuya, bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11316
2020-02-11 09:03:43 -05:00
Yeongjong Lee eb4af00c30 elm perf_test: fix warning of implicit conversion of floating point
Summary:
The result of integral division is converted into floating point.
In order to fix this warning, it changes denominator to double from integer.

Reviewers: Jaehyun_Cho, Hermet, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11313
2020-02-11 08:56:34 -05:00
Hermet Park fbf792896f canvas proxy: fix broken proxy source clip set behavior.
Some internal logic has been wrongly changed while it's on refactoring.

Fixed by reverting it.
2020-02-11 21:45:56 +09:00
Ali Alzyod 4f99a37aee efl.canvas.textblock: allow all white spaces in style string not just space
Summary:
style string can contain any kind of white spaces and it will be fine

For example
```
"font=sans font_size=30 color=red "
```
Is the same as
```
"font=sans\tfont_size=30\n  color=red "
```

Reviewers: woohyun, segfaultxavi, tasn, zmike

Reviewed By: segfaultxavi

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8532

Differential Revision: https://phab.enlightenment.org/D11303
2020-02-11 12:10:00 +01:00
Xavi Artigas f546a57003 docs: ecore_animator's default framerate is 60 not 30
This was changed in 81242af6f9 without updating the docs.
2020-02-11 11:03:49 +01:00
Stefan Schmidt 5f1047c8b4 exactness_player: make use of PATH_MAX define instead of posix variant
The use of _POSIX_ has lead to a compile problem on old Ubuntu (16.04)
versions. We use PATH_MAX everywhere else so follow suit here.

Fixes T8613

Reviewed-by: Ali Alzyod <ali198724@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11305
2020-02-10 14:01:47 +01:00
Hermet Park 98f2c3d5ee evas object: + null check for safety 2020-02-10 21:23:20 +09:00
Alastair Poole 7f727c1366 elm_code_widget: Display cursor within widget.
Only render the cursor when its within the bounds of the
widget.
2020-02-09 21:14:42 +00:00
Lucas Cavalcante de Sousa fdbc2a5b32 efl: `eina_value_list_vinsert` assumes that the position is always valid
Summary:
The eina_value_list_vinsert at src/lib/eina_inline_value.x was not checking if the desired position was valid:
When inserting in an empty list in any out of bounds position it actually createded a list with the head being the desired value.
When inserting in a non-empty list in an out of bounds position caused a c error.
Now both cases return EINA_FALSE

Ref T8611

Test Plan:
Meson configured with -Dbindings=mono,cxx -Dmono-beta=true, and tests runned
with ninja test all.

Reviewers: felipealmeida, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8611

Differential Revision: https://phab.enlightenment.org/D11301
2020-02-07 13:52:15 -05:00
Marcel Hollerbach 1e4713a25c exactness: fix osx build
edje depends on more than just edje_cc.
2020-02-07 15:04:03 +01:00
Ali Alzyod 6ce2698bb5 efl.ui.textbox: prevent longpress + right click from working on scrollbars
summary_: Longpress and right click one textbox scrollbars will not show up the menu.

Reviewers: woohyun, bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8604

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11295
2020-02-07 14:20:29 +01:00
Stefan Schmidt ea3c30ca1e exactness: cleanup some coding style isues
Just a few that I spotted when looking over the code.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11290
2020-02-07 11:31:28 +01:00
Stefan Schmidt 248f3d9d6b exactness: fix init/shutdown handling of efl components in various binaries
The init/shutdown handling for efl libraries was a bit sloppy and
unbalanced in the exactness binaries. Switching over to use
ecore_eas_init/shutdown here instead of doing all libs individually.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11289
2020-02-07 11:31:25 +01:00
Stefan Schmidt 6a4e297ec8 exactness: remove unused code
Either commented out, blank lines or no needed includes.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11288
2020-02-07 11:31:21 +01:00
Stefan Schmidt 93bdf120d0 exactness: remove no longer needed EO and BETA API defines
This has been in place during development and not updated for recent
changes and merge into efl master.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11287
2020-02-07 11:31:18 +01:00
Stefan Schmidt 594643b39e exactness: print out statistics at the end of the run
Given a better overview after the wall of text we are seeing from
starting and stopping jobs in parallel.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11286
2020-02-07 11:31:16 +01:00
Daniel Zaoui 50dbfcf31d exactness: import code from external repo into efl.git
Exactness has been developed in a separate git repo for many years. This
finally moves it over into efl. Having it in tree allows us for easier
testing with our current main target elementary_test and integration
into our CI system (patches for this are work in progress already).

We are only importing the lib and binary for test execution, not the
full set of test data. This is would be over 500MB and thus it will stay
in a different repo and only made available during the actual testing.

[The original patch was made by Daniel Zaoui. Over the course of review
and testing it got extended with build fixes for API changes and mingw
compilation support from Stefan Schmidt and Michael Blumenkrantz]

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11285
2020-02-07 11:31:13 +01:00
Stefan Schmidt 78ad088dd7 elementary: build elementary_test additionally as shared object
For our exactness testing we are dlopen() the elementary_test
executable. Until glibc 2.30 this was posible with -pie, but it changed
in the glibc version. They no longer allow these executables to be
dlopen()'ed.

As a workaround for now we are building elementary_test also as a shared
object file which we load and use in the exactness testing process.

The code came from Marcel Hollerbach and I only tested it and fixed up a
small detail.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11284
2020-02-07 11:31:10 +01:00