This patch is necessary to work around the fact that if you have some
ecore system module installed, they will be initialized and may use another
library like eldbus that will call ecore_init again. So ecore_init will be
different from 1, but still be a success.
My patch does introduce a work around a problem in that situation. Calling
ecore_shutdown wont work at this stage, as we do have module that did initialize
ecore also. And the only way to make ecore_shutdown happen is to unload those
module and that wont happen as they where initialized from inside ecore... lala !
Yes, we never shutdown ecore properly when we have ecore module that use
something like eldbus.
Ecore system module may use dbus, so when you init ecore, it may init eldbus a few
more time (depending on the module that are present on your system). This result in
eldbus_init returning a valid init, but different from 1. This patch update the test
to take that into account.
Summary: Added a test for range_text_get case on the text that include multi text node.
Reviewers: tasn, woohyun, seoz
CC: cedric
Differential Revision: https://phab.enlightenment.org/D398
This should fix the test hangs on Jenkins. Fixed them for me.
The problem was, that the timeout was not handled correctly.
The server object was deleted, but the mainloop was not stopped.
The lock on the main hash was taken to late (after we took the decision
to remove the targeted Eina_File from the cache), this means it was possible
to get an Eina_File from the cache that was going to be removed. This patch
attempt to fix that potential race condition.
Hopefully should fix T461.
This reverts commit 1714fe93f4.
We actually want this type, it makes things clearer.
Conflicts:
src/tests/eo/function_overrides/function_overrides_inherit2.c
src/tests/eo/function_overrides/function_overrides_simple.c
src/tests/eo/suite/eo_test_class_simple.c
Markup_get was misbehaving and returning wrong results with some escaped
chars. markup_to_utf8 was working correctly. Merged the code together
and now both are consistent and correct.
Thanks to WooHyun for reporting.
The tests were failing on jenkins (gentoo), and on arch, but passing on an
old ubuntu. Ubuntu patches freetype, and that's probably the reason for that
with the tests more lax, both work.
NOTE: I have no idea why we did require emotion_test to only work
in tree. If you have an explanation, I would be glad to ear it. In the
mean time, this patch restore the use of emotion_test when your build
tree is not around.
Add the moment, it only support simple type. Need iterator for more
complex type. It also expect a pointer to an Eina_Value and not directly
an Eina_Value, let me know if you prefer the opposite and maybe I
should rename it EET_T_PVALUE.
It seems someone thought it was fun to have rel2.offset behave
differently than rel1.offset...
A rel2.offset of 0 actually means the size is increased by one pixel.
Acocunt for that in the tests.
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
Test less values in between, but still have a decent combination of
large/small values to test.
Fixes -WTasn
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
This may break under heavy load so we shouldn't rely on it. Instead make
sure that time only moves forward.
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
We want to introduce a new mechanism concerning the data of the Eo
objects.
The goal is to improve the memory management by defragmenting the memory
banks used by the Eo objects. The first phase has been done by raster
and consists in allocating the objects into a separate memory region
that the one used by malloc. So now, we know where our objects are
located.
Now, moving objects means moving data of objects. The issue we have here
is that a lot of data pointers are stored into data of other objects,
e.g Evas Object data into lists for rendering...
We need a way to reference the data and eo_data_get doesn't provide us
that. So we need to improve the API for data extraction by requesting
from the developer if the data will be stored or not. Five functions are
supplied:
- eo_data_scope_get: no referencing, the data pointer is no more used after
exiting the function.
- eo_data_ref: reference the data of the object. It means that while the
data is referenced, the object cannot be moved.
- eo_data_xref: reference the data of the object but for debug purpose,
we associate the objects that references. Same behavior as eo_data_ref
for non-debug.
- eo_data_unref: unreference the data of an object.
- eo_data_xunref: unreference the data of an object previously
referenced by another object.
I deprecated the eo_data_get function. Most of the time,
eo_data_scope_get needs to be used.
In the next patches, I changed the eo_data_get to the corresponding
functions, according to the usage of the data pointer.
The next step is to find all the places in the code where the data is
stored but not yet referenced. This will be done by:
- requesting from every object to unreference all data to other objects.
- moving all the objects from one region to another
- requesting from every object to rerefenrence the data.
- debugging by hunting the segmentation faults and other weird
creatures.