Dynamic memory stored in 'deciphered_d' allocated through function
'eet_decipher' at line 1385 can be lost at line 1408. Also there are 3
similar errors on line(s) 1427, 1430, 1450.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
When harfbuzz is enabled, RTL text (arabic, hebrew...) is displayed differently
if the paragraph begins with or without LTR.
The problem was related to the function evas_common_language_script_type_get
and a wrong offset given as parameter to this function.
Thanks to EunYoung Kim for having found this bug.
Signed-off-by: Daniel Zaoui <daniel.zaoui@samsung.com>
That work clearly was possible thanks to Leandro. If you want more information
go to his blog : http://tia.mat.br/posts/async_io_with_coroutines/ .
The main difference with his implementation is more portable and not thread safe.
It does not have a custom swapcontext (would make sense as we don't need to save
the sigcontext) so it will be less fast. If people are ready to contribute asm
patch for that purpose I will be happy to apply them.
As for portability this code should work on all architecture we already support
thanks to a nice hack with setjmp/longjmp borowed from libcoroutine. We do use
Fiber for Windows support, but as 1.8 is completely borken in that regard, this
is theorical work only.
Thinks left to do :
- Eoify the API
- Documentation
- More tests
- Add support for coroutine in fd handler
- Add coroutine support to ecore_thread api
- Write some example
Test can only be build if they are enable. Moving them inside the if
so we don't get annoying error when make check is run without tests
being turned on.
Are dbus function calls with more than 1000 arguments possible?
If so -> prevent buffer overflow
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
type is an enum which can be 0. Make sure that it isn't before accessing
shared_connections[type - 1]
Found with klocwork
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
Signal are not a portable way to detect memory mapped file corruption.
So let's disable it for system without signal and later find a way to
detect it on other system.
Evas_Object_Polygon are a little bit special and track their position
to avoid rebuilding various property when just moved. The offset.{x,y}
are there for that. For a strange reason they got a += instead of just
an = and there our offset did go quickly out of screen...
The _pixel_alpha_get() function used in evas_object_image_is_inside won't
work with engines other than software - since it relies on engine data
being *always* RGBA_Image * - which is wrong for OpenGL backend that uses
Evas_GL_Image * for "engine_data" pointer.
On system like 64bits windows it is not a guaranty that a
sizeof (long) == sizeof (void*), we are better using the right type.
This generate a warning that we could have seen with just cross compilation.
This is now longer needed now that we switched to git. And it should
also silent all the file modified problems.
The next time this file is listed as modified you should either have
done it yourself or added an image in the efl docs img folder.
I add new example related with this. (ecore_evas_extn_socket & plug example)
ecore extn use this infrasturcture, server app and client app can communicate each other
later, this can be used to contorl access message
SVN revision: 83942
This reduce our waste of memory by 300K in most elementary application. There is
another 400K to win by merging edje signal callback automat.
SVN revision: 83879