this has 2 bugs really. 1 - the format masks for plain text included
markup which ... is wrong - right? that should have a mime type of its
own... either way it leads to plain text pasts being handled wrong in
wayland... so this fixes that
also the string buffers in wayland just were nothandled right. buffers
were raw binary buffers plus size,not strings, but they were strdup'd
etc. assuming nul termination. oh so wrong to do that. this also fixes
that as i fpound it while fixing the above format bug.
this fixes T6284
@fix
[Dereference after null check]
(1) src/lib/ecore/ecore_main.c
- _efl_loop_handler_efl_object_finalize checks if pd->loop_data is NULL.
After that, _handler_reset > _handler_clear > _ecore_main_fd_handler_del >
_ecore_main_fdh_pool_del is directly dereferencing pd->pool_data.
- _efl_loop_handler_efl_object_parent_set checks if pd->loop_data as well.
Then it calls _handler_reset as well.
(2) src/lib/ecore_wayland/ecore_wl_dnd.c
- ecore_wl_dnd_selection_set checks if t - result of wl_array_add - is NULL.
And it is dereferecing t directly for wl_data_source_offer.
(3) src/lib/elementary/efl_ui_dnd.c
- Third parameter const char *data could be NULL.
In this case strlen dereferences NULL. The data should be non NULL value.
I have checked this with Mr. Thiep Ha.
(4) src/lib/evas/canvas/evas_object_inform.c
- _efl_canvas_object_efl_gfx_stack_stack_below checks if obj->layer is NULL.
So it could call evas_object_inform_call_call_restack which is dereferencing
obj->layer directly.
tell other windows they lost their selections correctly if you have
multiple windows within the same process. this fixes multi-window mode
in terminology.
@fix
well call sync returns a void * too.... instead of just void return
(nothing) but this makes it easier to write and maintain code due to
consistency of function callback signatures.
leave the exact numbers less defined because core count can change on
the fly and could be virtually limited by policy in future etc. so
keep things less exactly defined so people dont go depending on exact
results which was never really intended.
this works out to the same number of total tests as slstr_many but
now split across all the threads
fix T6846
Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>
these are supposed to be for testing the finding of values not in the
hash, not basic hash operations
fix T6839
Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>
there's no point in iterating this many times; the base step size is 32
and so each loop will only increase the buffer...not at all since it takes
3 loops for the buffer to increase by the step size
verify that the buffer increases and then stop instead of spinning uselessly
fix T6835
Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>
the timing does not matter for these tests, so there's no point in
randomly waiting longer and delaying build completion
fix T6832
Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>
this test is to try and match values in a tree which have not been
inserted, so remove irrelevant insert/remove operations as well as
insane looping
fix T6830
Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>
the constructor calls init for every object, so ensure a matching
shutdown call exists to balance the init count
ref 517471190f
ref T6816
Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>
for some reason, a few projects changed this from the expected value of
abs_top_builddir for their test suites, breaking the usage of this define
within those tests
fix T6812
Reviewed-by: Stefan Schmidt <stefan@osg.samsung.com>