Commit Graph

66317 Commits

Author SHA1 Message Date
Carsten Haitzler aad95dd625 ecore evas - module - use correct enums 2020-08-25 13:21:25 +01:00
Carsten Haitzler 7b3096f947 evas - gl generic - use correct enums for types 2020-08-25 13:21:25 +01:00
Carsten Haitzler b3c5008284 exactness - injecotr - alloc correct buffer size
didn't account for null bytes... fix.
2020-08-25 13:21:25 +01:00
Carsten Haitzler e9adfbae00 exactness - cast enum assign - it is valid due to values. warn fix 2020-08-25 13:21:25 +01:00
Carsten Haitzler 1b12294efb tests - evas vg - use proper enuams for evas vg api - warn fix 2020-08-25 13:21:25 +01:00
Carsten Haitzler 5f709aa0d3 tests - evas vg - use evas enumas not efl ui - warn fix 2020-08-25 13:21:25 +01:00
Carsten Haitzler 603102577b tests - efl ui config - use proepr elm enums for elm apis 2020-08-25 13:21:25 +01:00
Carsten Haitzler c984939762 tests - elm spinner - use proper elm enum - warning fix 2020-08-25 13:21:25 +01:00
Carsten Haitzler 125986e27b tests - elm slider - fix possile use of uninit var warning 2020-08-25 13:21:25 +01:00
Carsten Haitzler 5da1229484 ecore con - curl - fix error map to map right enum
this would print the wrong error to eina log - this fixes this

@fix
2020-08-25 13:21:25 +01:00
Ali Alzyod 805545ab68 evas_font_query: add Use parentheses within macros
Differential Revision: https://phab.enlightenment.org/D12116
2020-08-25 12:38:56 +02:00
Carsten Haitzler 8eefc204fc eina file - fd close - handle fbsd 11 syscall abi as it broke in 12 2020-08-24 20:09:06 +01:00
Stefan Schmidt e546d24a2e release: Update NEWS and bump version for 1.25.0-alpha1 release 2020-08-24 11:29:35 +02:00
Hosang Kim e2944780fa ecore_wl2_display: move wl_display_dispatch_pending before condition check.
Sometimes display ref count is not zero after wl_display_dispatch_pending.

For example, wl_data_source_listener's callback is called by wl_display_dispatch_pending.
Display ref count is not zero but display is cleaned up, it makes double free corruption.

Reviewed-by: Christopher Michael <devilhorns@comcast.net>
Differential Revision: https://phab.enlightenment.org/D12109
2020-08-22 08:25:06 -04:00
Carsten Haitzler e6af6c7a7b eina file - fix getdents64 on older glibc's and use raw syscall 2020-08-21 12:48:32 +01:00
Carsten Haitzler 31c343b77c efl/ecore exe - more paranoia - block sig handlers between fork + exec
in theory signal handlers could kick in after fork and before exec...
so block them until we're exec'd or exited so they don't change any
program state.
2020-08-21 09:18:23 +01:00
Carsten Haitzler 49662fcb49 eina - eina_file_close_from - handle coverity theory that closes change
this won't happen as the setup should not have the # of fd's found in
2st pass and 2nd pass for a dirfd change as nothing should interfere.
comment to that effect and add a paranoid change num_closes to the
number found
2020-08-21 09:18:23 +01:00
Alastair Poole 0601cda0ba confs: Add OpenBSD Build Helper Scripts.
As with E, add one for OpenBSD. Makes things easier in many
respects.
2020-08-20 10:05:35 +01:00
Carsten Haitzler db8e598351 evas - fix deadlock with sw async rendering calling cbs in post flush
post flush doesnt cleanr evas->rendering until after it calls post
flush callbacks. any post flush callback that neexts so access data
and block waiting for an async render tyo be done thus blocks forever.

this adds a 0.2 sec timeout in case so we at last march on with
hiccups instead of totally stalling AND clears evas->rendering before
calling the callbacks.

@fix
2020-08-20 08:52:32 +01:00
Carsten Haitzler 4b4c208d99 ecore - don't do anything with heap between fork and exec
this avoids a possibgle deadlock if a malloc impl is holding a lock
and has not released it at the time we fork.

@fix
2020-08-20 08:52:32 +01:00
Carsten Haitzler cef058c48b ecore x - go back to vsync thread. this will be more reliable
while it requires an extra wakeup from vsync thread -> e and this adds
a bit of jitter, it's mroe reliable in the face of "missed a frame"
timings and doesnt degrade as badly.
2020-08-20 08:52:32 +01:00
Wander Lairson Costa 1ee6e020bb eina_test_lock.c: Implement clock_gettime for Windows
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Reviewed-by: Vincent Torri <vincent.torri@gmail.com>
Differential Revision: https://phab.enlightenment.org/D12023
2020-08-20 09:36:23 +02:00
João Paulo Taylor Ienczak Zanette bfc3e9f96e eina: Close file in unlink test
At least on Windows (didn't have the time to test on Linux yet),
running tests, even if they passed, there would be an Eina error on logs
pointing that a temporary file wasn't closed:

```
ERR:eina_file ../src/lib/eina/eina_file_common.c:1137 eina_file_shutdown() File [C:/Users/joao_/AppData/Local/Temp/aaaa_file_test_EBpVea] still open 1 times !
```

In the end, it was the `eina_file_test_unlink` that would create a temporary
file but never close it, being caught only by `eina_shutdown()`.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Reviewed-by: Vincent Torri <vincent.torri@gmail.com>
Differential Revision: https://phab.enlightenment.org/D12062
2020-08-20 09:36:20 +02:00
Vincent Torri 047b59d934 eet test: use eina_file_mkstemp, fix include for vc++
Reviewed-by: João Paulo Taylor Ienczak Zanette <joao.tiz@expertisesolutions.com.br>
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D12108
2020-08-19 15:59:55 +02:00
João Paulo Taylor Ienczak Zanette f6672c91a8 eet: Fix 'No OPENSSL_Applink' error message.
In some systems (such as Windows), OpenSSL raises an error about "No Applink"
(see ["I've compiled a program under Windows and it crashes: why?" in OpenSSL
FAQ](https://www.openssl.org/docs/faq.html#PROG3)). Including only
openssl/applink.c didn't work, so the solution was to replace `FILE*`
interfaces with OpenSSL's BIO API which also contains file operations.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D12103
2020-08-19 15:59:52 +02:00
Ali Alzyod eed4068fa2 evas_textblock: myanmar script rendering with e vowel.
Summary: Resolve rendering e vowel (0x1031) with Myanmar(Burmese) with zero width non joiner (0x200C)

Test Plan: ninja test

Reviewers: woohyun, bowonryu

Reviewed By: bowonryu

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12102
2020-08-18 19:15:12 +09:00
AbdullehGhujeh eb0f7183dd Efl Canvas Text : canvas textblock changed not fired for shadow format (style_apply)
Summary:
If shadow format changed using style_apply , the event EFL_CANVAS_TEXTBLOCK_EVENT_CHANGED will not be fired.
also added tests for it.

Reviewers: ali.alzyod, woohyun

Reviewed By: ali.alzyod

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11078
2020-08-18 18:10:04 +09:00
Ali Alzyod 4ad272a8c3 evas_object_textblock: utf8_to_markup support all escapse chars
Summary: update evas_textblock_text_utf8_to_markup to support all escape characters

Test Plan:
```
#define EFL_EO_API_SUPPORT 1
#define EFL_BETA_API_SUPPORT 1
#include<Eina.h>
#include<Efl.h>
#include <Elementary.h>

EAPI_MAIN int
elm_main(int argc, char **argv)
{
   Evas_Object *win,*textblock;

   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

   win = elm_win_util_standard_add("Main", "App");
   elm_win_autodel_set(win, EINA_TRUE);

  textblock = evas_object_textblock_add(win);
  char * aaa = evas_textblock_text_utf8_to_markup(textblock,"A<<>>\"A\'\tA");
  // aaa ==  "A&lt;&lt;&gt;&gt;&quot;A&apos;<tab/>A";
   evas_object_size_hint_weight_set(textblock,EVAS_HINT_EXPAND,EVAS_HINT_EXPAND);
   evas_object_size_hint_align_set(textblock,EVAS_HINT_FILL,EVAS_HINT_FILL);
   evas_object_show(textblock);

   evas_object_move(textblock,0,0);
   evas_object_resize(textblock,320,480);
   evas_object_resize(win,320,480);

   evas_object_show(win);
   elm_run();

   return 0;
}
ELM_MAIN()

```

Reviewers: lauromoura, CHAN, woohyun, bu5hm4n, bowonryu, tasn, herdsman

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8843
2020-08-18 17:34:02 +09:00
Myoungwoon Roy, Kim 463291548d docs: Correct the wrong API group name in elm_win and elm_glview
I found wrong API group name in elm_win and elm_glview and fixed them.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D12075
2020-08-17 10:32:27 +02:00
João Paulo Taylor Ienczak Zanette de982276b7 eina: Use INVALID_FILE_ATTRIBUTES instead of magic number
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Reviewed-by: Vincent Torri <vincent.torri@gmail.com>
Differential Revision: https://phab.enlightenment.org/D12106
2020-08-17 09:56:45 +02:00
Alastair Poole b4e7f6de3b ecore_x: Add mode flags new in xrandr 1.2. 2020-08-15 15:52:56 +01:00
Carsten Haitzler 672d1de730 edje - calce - really respect max image size for img sets
when you have an image set for an image it wouldnt actually respect
image max size and not select something bigger than it.. now it will

@fix
2020-08-13 17:44:37 +01:00
Hermet Park 990c46c94d evas examples: remove unecessary beta tag.
vector legacy apis have been officially released.
it doesn't need beta tag anymore.
2020-08-13 17:03:14 +09:00
Marcel Hollerbach 812e9f9f09 eo: set idx on exit to 1 not to 0
if this is set to 0 the next iteration in the upper frame event would
decrement the 0 again leading to a overflow making the iteration and
callback array overflow.

Long story short: set ifx to 1 to prevent overflow, test added.

fixes T8787

Differential Revision: https://phab.enlightenment.org/D12101
2020-08-12 11:18:10 +02:00
Carsten Haitzler a923cb0f7b ecore input - make an unsupported joystick a warn not an err... 2020-08-11 13:49:30 +01:00
Alastair Poole c26f56aef9 elm_code: Selection start (with keyboard) fix.
When starting a selection we were jumping two characters. This
change resolves that.
2020-08-10 14:15:08 +01:00
Alastair Poole 39f21df493 elm_code: Always render N new lines (buffer).
If we don't have a buffer here you CAN lose the race when scrolling.
As there is a check later in the flow, we can just use a padding
of 64 instead of checking the range. This ensures that scrolling is
smooth and content is always rendered throughout an aggressive
scroll.
2020-08-10 11:17:32 +01:00
João Paulo Taylor Ienczak Zanette 7d2f3e85ec evil: Remove OS version check
Summary:
Current version checking is done with GetVersion, which is now deprecated and issues the warning:

```
'GetVersion' is deprecated [-Wdeprecated-declarations]
```

The first approach of this commit was to replace GetVersion call with the newer (and more reliable) `IsWindowsVistaOrGreater()` from versionhelpers.h, but nowadays it makes more sense to actually not even make that check, since it is more than unlinkely to happen that someone tries to compile/run EFL in Windows XP.

Reviewers: vtorri, stefan_schmidt, raster

Reviewed By: vtorri, raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12095
2020-08-07 20:08:48 +01:00
Shinwoo Kim 0e91ec6c78 ecore_wl2_subsurf: follow wayland spec for sync
Summary:
By default a sub-suface is synchronized mode.
So when a sub-surface is created, its sync value should be TRUE.

If the E works as specification, user cannot make it work as
desynchronized mode by calling subsurface.set_sync(FALSE).

[Reference]
https://github.com/wayland-project/wayland/blob/master/protocol/wayland.xml
is telling "A sub-surface is initially in the synchronized mode."

signed-off-by: Shawn Lee <shiin.lee@samsung.com>

Reviewers: Hermet, zmike, devilhorns, raster

Reviewed By: devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12098
2020-08-07 12:00:13 +09:00
Marcel Hollerbach 67cd017aac eo: evalulate special counts earlier
we have these special counts which are > 0 when there is a callback
subscribed. THey are currently evalulated in _callback_call. However,
we can also skip the entire call from inside eo_base_class as we are
having the fields there as well.

This way we are skipping the obj pointer lookup and vtable lookup.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D12079
2020-08-06 10:34:33 +02:00
Marcel Hollerbach 3d547a0b06 eo: event callback call optimization
a little overfiew to how eos event emission is working:
- In eo there are 2 types of events restart events and normal events.
  Normals are *always* emitted from callback_max to 0
  Restarts are emitted from the previous emissions current idx to 0. The
  previous emission will stop then
- To keep track of the previous event emissions for restarts there was
  an eina inlist.
- To keep track of other things in eo, there was an additional eo event
  stack frame (newly inserted events etc. etc.)

This commit now uses this event stack frame for implementing the details
about the restart events. This has the advatage that every
efl_object_data contains one byte less, and the up to date keeping of
the id's in the restart infrastructure is not needed anymore, making the
whole event emission code less instructions and faster.

How this now works:
- Every emission has a event emission frame, when the emission starts,
  the frame is added, next points to the next older event emission. In
  this event stack frame we are storing the current idx, the description
  and a few other things that are not really relevant at this point.
- when a restart event is started, this event stack is searched from the
  current frame up to the next one featuring the same event description.
  The event frame stack is then remembered, if the event emission is
  done, the current idx (normally 0 or something higher when callback
  was stopped) is then copyied back to the earlier frame.
- Based on the nature of the event frame stacks, the idx is updated
  every iteration. And for the restart events, we only need to know the
  next, which removes the need of permanently updating the idx in the
  current stack.
- The event frame stack is not allocated on the heap, hence more things
  in there does not matter at all.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D12097
2020-08-06 10:34:31 +02:00
Wonki Kim 3f4bcd02dc edje_entry: fix a potentional error of null deref
this is a patch to fix a potentional error by null dereferencing.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D12087
2020-08-06 10:34:28 +02:00
Wonki Kim e4651d8fe5 efl_canvas: fix a potentional error of null deref
this is a patch to fix a potentional error by null dereferencing.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D12093
2020-08-05 10:47:15 +02:00
Wonki Kim efdd1b166e elm_access: fix a potentional error of null deref
Summary: this is a patch to fix a potentional error by null dereferencing.

Reviewers: jsuya, kimcinoo, bu5hm4n

Reviewed By: jsuya

Subscribers: kimcinoo, bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12092
2020-08-05 17:03:02 +09:00
Wonki Kim 8265c6a98f evas/engine: fix a potentional error of null deref
Summary: this is a patch to fix a potentional error by null dereferencing.

Reviewers: jsuya, bu5hm4n, Hermet

Reviewed By: jsuya, bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12091
2020-08-05 17:02:13 +09:00
Wonki Kim 19b603166a edje: fix a potentional error of null deref
Summary: this is a patch to fix a potentional error by null dereferencing.

Reviewers: jsuya, bu5hm4n, Hermet

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12086
2020-08-05 15:18:34 +09:00
Wonki Kim 7dcd14347d edje_edit: fix a potentional error of null deref
Summary: this is a patch to fix a potentional error by null dereferencing.

Reviewers: jsuya, bu5hm4n, cedric, Hermet

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12090
2020-08-05 15:14:25 +09:00
Bowon Ryu 39e9740fca edje_edit: add null check for return of eina_hash_find
Summary: to prevent null pointer dereference

Test Plan: N/A

Reviewers: cedric, jsuya

Reviewed By: jsuya

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12094
2020-08-05 15:09:05 +09:00
Shinwoo Kim bab3f870b8 embryo_cc: ++safty code
Summary:
This patch is increasing safty code by handling following case.

sc_compile > OH!! there is uninitialized loacal variable "outfname"!! >
setopt > about > longjmp > setjmp returns 3 > goto cleanup >

then uninitialized data is read from local variable "outfname".

Reviewers: raster, Hermet, jsuya, herb

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12074
2020-08-05 14:53:35 +09:00
junsu choi 26b50c91f8 evas_filter: Add null check for instruction
Summary:
Add a null check for cases where the param passed
from the filter instruction can be a null pointer.

Test Plan: N/A

Reviewers: kimcinoo, Hermet

Subscribers: #reviewers, #committers, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12084
2020-08-05 14:45:22 +09:00