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>
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>
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>
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>
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>
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>
we already have the compiler object, there is no need to fetch it again,
further more, we are probebly interested in BIGENDIAN on the
target_machine, not the host_machine.
you were not able to disable the header checks, so if the header was not
there it indicated that you could turn it of. However, the option check
was in the has_header if not outside of it. Further more, header checks
are done in the subdirectory that is done for header checks,
unneccessary cpu_**** flags are removed, global optimization options are
added to the global_arguments instead of just the package_c_args, which
leads to the fact that also all binaries etc. are build by default with
those optimization flags.
This also reduces the amount of options to a minimum of 1 option, to
just control if there should be the optimization or not.
This also changes from host_maschine to target_mschine, since we
probebly want to enable the optimization for the target maschine, not
the host.
Differential Revision: https://phab.enlightenment.org/D7296
Summary:
the optimization that is build here requries a few .eo.h files - so
ensure that they are generated before they are used.
This fixes the build of efl.
Reviewers: ManMower, raster
Reviewed By: ManMower
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7295
We need to keep our builds running for every push to a minimum. Various
distro builds as well as the release-ready build can happily run once a
day.
This commit also switches from a build matrix to a simple list of build
jobs to allow the usage of build type = cron condition (not possible
with the matrix builds)
Differential Revision: https://phab.enlightenment.org/D7293
Summary:
Efl.Ui.Layout namespace is removed to keep consistency with other
widgets.
Consequently, "Efl.Ui.Layout.Object" is renamed to "Efl.Ui.Layout" and
"Efl.Ui.Layout." is renamed to "Efl.Ui.Layout_".
Reviewers: segfaultxavi, bu5hm4n, cedric
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers, SanghyeonLee, woohyun
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7291
Summary: This is done to keep consistency with all the reference counting functions in Eo.
Reviewers: Hermet, smohanty
Reviewed By: Hermet
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7274
Summary:
This prevent double destruction of source. if _ecore_wl2_input_del is called
with destroyed source, it can make unexpected troubles.
Reviewers: Hermet, id213sin, devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7265
Summary:
Strings are const and if these are meant to be owned then it
should define its own special free func. Mstrings are mutable
and therefore can be owned and freed using standard free() by
default.
This fixes some warnings around the EFL caused by empty fallback
free funcs created by the eolian generator, and these mutable
strings were not being freed and potentially leaked.
Reviewers: bu5hm4n, stefan_schmidt
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7261
symlinks for loaders and their extensions first pointers to an abs
pathname that was bad for destdirs with packaging and they also linked
to the wrong file - they had an extra . at the end due to link script
not using basename right. this fixes both of these to now point
relative (locally) and remove the . t the end so they work again.
Summary:
1. Pointed out gradient prepare step triggered duplicatedly,
because they are immediate children of container.
But gradients is desigend to fill shape,
shape could get ready of the gradients which are applied to.
So, container doesn't need to prepare gradient children.
2. Ector shape does prepare its gradient renderer in it's prepare time,
each gradients objects doesn't need to prepare renderer separately.
Here code skip duplication of sequences of gradients preparation step.
by cleaning up logic.
Reviewers: #committers
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7269
Summary:
In some cases, white space at end of line is remained after line-break.
This issue is happened when Textblock do word wrap at the next item. Without
spliting a previous text item. Then, Textblock just skipped calling
_layout_item_text_split_strip_white() function.
This patch also fixed a wrong test case based on wrong logic.
The range rectangles shouldn't be overlapped. Because of remained white space,
a meaningless rectangle was added. And it overlapped by next rectangle.
@fix
Test Plan:
Fixed an exising test case for range renctangles.
Run test case.
Reviewers: herdsman, woohyun, raster, cedric, subodh, subodh6129
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7204
Summary:
Whenever _edje_recalc_do() is called, a state value of
Edje structure is increased. This increased value will be stored
in Edje_Real_Part and Edje_Real_Part_State for calculation optimazation.
But, once the state value is overflowed, it ruins calculation logic.
@fix
Test Plan:
Run an Edje file which has infinite animation for over an hour.
I'll attach an example to phab.
Reviewers: raster, cedric, woohyun, Hermet
Reviewed By: Hermet
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7264
this is usefull for later implementations in spinner and fileselector.
A event for this was not added because the result is only really usefull
after a focus operation has been successfull.
Differential Revision: https://phab.enlightenment.org/D7102
Summary:
This commit removes some clashes (i.e. names as classes and namespaces
at the same time). It'll avoid nested items that are either forbidden
(C#) or problematic (Python) in some languages.
Reviewers: segfaultxavi, bu5hm4n, felipealmeida
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7260
Summary:
Check if the Eo to be replaced is NULL before calling efl_unref.
The documentation implies that the replaced object can be NULL, so this
check avoids unnecessary function calls and warning logs.
Add an EINA_SAFETY check in order to properly print an error message
when the function is used with an NULL storage pointer.
The documentation specifies that the first parameter can not be NULL.
So printing an error message should be better than silently returning.
Add a boolean return to the function that signalizes if the content of
the storage was changed. It is NOT an success/error flag, it is just a
simple helper to quickly test for a change in content.
This feature was inspired by eina_stringshare_replace that is used in
similar ways around the code.
Change the documentation to match the changes and to be more specific
about what is expected and how the arguments are treated.
Reviewers: raster, bu5hm4n, cedric, felipealmeida
Reviewed By: bu5hm4n
Subscribers: #reviewers, #committers, larryolj
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7256
We weren't setting a C++ version for build previously, which would
result in compiler specific default being used, most likely C++11
with GNU extensions on modern compilers and C++03 with GNU exts
on old compilers. This is bad because it potentially breaks build
on older toolchains that don't default to a modern C++.
Now we enable pure C++11 without GNU exts; this resulted in some
of the build breaking because of use of typeof() GNU C/C++ ext
in tests code, so fix that to use standard decltype() from C++11.
@fix